Duplicated Features
The following ODBC 2.x functions have been duplicated by ODBC 3.x functions. As a result, the ODBC 2.x functions are deprecated in ODBC 3.x. The ODBC 3.x functions are referred to as replacement functions.
When an application uses a deprecated ODBC 2.x function and the underlying driver is an ODBC 3.x driver, the Driver Manager maps the function call to the corresponding replacement function. The only exception to this rule is SQLExtendedFetch. (See the footnote at the end of the following table.) For more information about these mappings, see Mapping Deprecated Functions in Appendix G: Driver Guidelines for Backward Compatibility.
When an application uses a replacement function and the underlying driver is an ODBC 2.x driver, the Driver Manager maps the function call to the corresponding deprecated function.
ODBC 2.x function | ODBC 3.x function |
---|---|
SQLAllocConnect | SQLAllocHandle |
SQLAllocEnv | SQLAllocHandle |
SQLAllocStmt | SQLAllocHandle |
SQLColAttributes | SQLColAttribute |
SQLError | SQLGetDiagRec |
SQLExtendedFetch[1] | SQLFetchScroll |
SQLFreeConnect | SQLFreeHandle |
SQLFreeEnv | SQLFreeHandle |
SQLGetConnectOption | SQLGetConnectAttr |
SQLGetStmtOption | SQLGetStmtAttr |
SQLParamOptions | SQLSetStmtAttr, SQLGetStmtAttr |
SQLSetConnectOption | SQLSetConnectAttr |
SQLSetParam | SQLBindParameter |
SQLSetStmtOption | SQLSetStmtAttr |
SQLTransact | SQLEndTran |
[1] The function SQLExtendedFetch is duplicated functionality; SQLFetchScroll provides the same functionality in ODBC 3.x. However, the Driver Manager does not map SQLExtendedFetch to SQLFetchScroll when going against an ODBC 3.x driver. For more information, see What the Driver Manager Does in Appendix G: Driver Guidelines for Backward Compatibility. The Driver Manager maps SQLFetchScroll to SQLExtendedFetch when going against an ODBC 2.x driver.
Note
The function SQLBindParam is a special case. SQLBindParam is duplicated functionality. This is not an ODBC 2.x function, but a function that is present in the Open Group and ISO standards. The functionality provided by this function is completely subsumed by that of SQLBindParameter. As a result, the Driver Manager maps a call to SQLBindParam to SQLBindParameter when the underlying driver is an ODBC 3.x driver. However, when the underlying driver is an ODBC 2.x driver, the Driver Manager does not perform this mapping.