Version | Description |
1.0 (c1993) | The first version of ODBC. Only a few ODBC 1.0 applications and drivers still exist (on Windows) and none we know of on Linux. |
2.0 (c1994) | The second version of ODBC. Small reorganisation of API (e.g. new SQLBindParameter replacing SQLSetParam) core, level 1 and 2 conformance changes, new data types. There are still a number of ODBC 2.0 applications and drivers around. On Linux, most ODBC drivers are ODBC 3 and the few that are still ODBC 2.0 are generally moving to 3. |
2.5 | There was also an ODBC 2.5. |
3.0 (c1995). | ODBC 3.0 introduced a large number of new APIs and ODBC descriptor handles. Most ODBC drivers on Linux are now ODBC 3.0 and many applications are also 3.0. |
3.5x (c1997). | Introduction of Unicode. |
3.8x (c2009). | Driver aware connection pooling, which allows an ODBC driver to better estimate the cost of reusing a connection from the pool based on a user's connection settings. Asynchronous connection operation, which enable applications to populate multiple connections in the pool at startup time so that subsequent connection requests can be more efficiently served. Driver-specific C data types, which are useful for supporting new DBMS data types that existing C types do not correctly represent. Before version 3.8, ODBC drivers had to use a generic type such as SQL_C_BINARY to work with DBMS-specific types, which the application would then need to reconstruct. Streamed output parameters, which enable an application to call SQLGetData with a small buffer multiple times to retrieve a large parameter value, reducing the application's memory footprint. We provide a SQL Server specific example for streamed output parameters in our C samples section. |