[erlang-questions] Difference btw Erlang ODBC and emysql driver for accessing MySQL

Avinash Dhumane avinash@REDACTED
Mon Jun 18 06:45:50 CEST 2012


Another aspect and consideration - applicable when using commercial DBMS  
(and, may not be for this specific thread):

For commercial deployment of the erlang-solution for integration with  
DBMS, ODBC of the erlang standard library maybe relied on.

Usually ODBC driver is not an issue because customer gets the certified  
driver from the DBMS vendor.

We have taken ODBC application of erlang standard library to the DBMSs  
(like AS/400, Netezza) not tested (as per the erlang documentation) by  
Erlang/OTP team, and it just works!

On Mon, 18 Jun 2012 08:48:03 +0530, Seth Falcon <seth@REDACTED>  
wrote:

> Hi Erisa,
>
> On Sun, Jun 17, 2012 at 6:11 AM, Erisa Dervishi <erisa85d@REDACTED>  
> wrote:
>> Could somebody take the trouble and explain to me (just the big
>> picture) why should I use emysql driver
>> (https://github.com/Eonblast/Emysql) instead of using the Erlang ODBC
>> application for accessing Mysql Database?
>
> You might want to use emysql instead of ODBC because...
>
> To use ODBC will require that you have the appropriate odbc driver
> code installed on your platform. If you use emysql, that's all you
> need. It implements the MySQL wire protocol, no additional non-erlang
> software needed.
>
> In theory, using a native driver (emysql) can be faster, though that
> is worth testing if that is of particular importance.
>
> A native driver is more likely to expose RDBMS specific features. This
> is good if you want the features and can be bad if you use them
> without realizing they are special and want to change backend DBs
> later on.
>
> Based on a quick scan of the ODBC docs, you will get a richer
> experience using prepared queries in emysql. In particular, you will
> be able to re-use a prepared query on a given connection, whereas with
> ODBC it looks like such queries will require parsing by the db engine
> on each call.
>
> Maybe that helps some?
>
> + seth



More information about the erlang-questions mailing list