This section summarizes ODBC routines, categorized by functionality.
For the complete ODBC API reference, please refer to the ODBC Programmer's Reference at http://msdn.microsoft.com/en-us/library/ms714177.aspx.
An application can call SQLGetInfo
function
to obtain conformance information about Connector/ODBC. To obtain
information about support for a specific function in the driver,
an application can call SQLGetFunctions
.
For backward compatibility, the Connector/ODBC driver supports all deprecated functions.
The following tables list Connector/ODBC API calls grouped by task:
Table 7.1 ODBC API Calls for Connecting to a Data Source
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLAllocHandle |
Yes | ISO 92 | Obtains an environment, connection, statement, or descriptor handle. |
SQLConnect |
Yes | ISO 92 | Connects to a specific driver by data source name, user ID, and password. |
SQLDriverConnect |
Yes | ODBC | Connects to a specific driver by connection string or requests that the Driver Manager and driver display connection dialog boxes for the user. |
SQLAllocEnv |
Yes | Deprecated | Obtains an environment handle allocated from driver. |
SQLAllocConnect |
Yes | Deprecated | Obtains a connection handle |
Table 7.2 ODBC API Calls for Obtaining Information about a Driver and Data Source
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLDataSources |
No | ISO 92 | Returns the list of available data sources, handled by the Driver Manager |
SQLDrivers |
No | ODBC | Returns the list of installed drivers and their attributes, handles by Driver Manager |
SQLGetInfo |
Yes | ISO 92 | Returns information about a specific driver and data source. |
SQLGetFunctions |
Yes | ISO 92 | Returns supported driver functions. |
SQLGetTypeInfo |
Yes | ISO 92 | Returns information about supported data types. |
Table 7.3 ODBC API Calls for Setting and Retrieving Driver Attributes
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLSetConnectAttr |
Yes | ISO 92 | Sets a connection attribute. |
SQLGetConnectAttr |
Yes | ISO 92 | Returns the value of a connection attribute. |
SQLSetConnectOption |
Yes | Deprecated | Sets a connection option |
SQLGetConnectOption |
Yes | Deprecated | Returns the value of a connection option |
SQLSetEnvAttr |
Yes | ISO 92 | Sets an environment attribute. |
SQLGetEnvAttr |
Yes | ISO 92 | Returns the value of an environment attribute. |
SQLSetStmtAttr |
Yes | ISO 92 | Sets a statement attribute. |
SQLGetStmtAttr |
Yes | ISO 92 | Returns the value of a statement attribute. |
SQLSetStmtOption |
Yes | Deprecated | Sets a statement option |
SQLGetStmtOption |
Yes | Deprecated | Returns the value of a statement option |
Table 7.4 ODBC API Calls for Preparing SQL Requests
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLAllocStmt |
Yes | Deprecated | Allocates a statement handle |
SQLPrepare |
Yes | ISO 92 | Prepares an SQL statement for later execution. |
SQLBindParameter |
Yes | ODBC | Assigns storage for a parameter in an SQL statement. Connector/ODBC 5.2 adds
support for “out” and “inout”
parameters, through the
SQL_PARAM_OUTPUT or
SQL_PARAM_INPUT_OUTPUT type specifiers.
(“Out” and “inout” parameters
are not supported for LONGTEXT and
LONGBLOB columns.) |
SQLGetCursorName |
Yes | ISO 92 | Returns the cursor name associated with a statement handle. |
SQLSetCursorName |
Yes | ISO 92 | Specifies a cursor name. |
SQLSetScrollOptions |
Yes | ODBC | Sets options that control cursor behavior. |
Table 7.5 ODBC API Calls for Submitting Requests
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLExecute |
Yes | ISO 92 | Executes a prepared statement. |
SQLExecDirect |
Yes | ISO 92 | Executes a statement |
SQLNativeSql |
Yes | ODBC | Returns the text of an SQL statement as translated by the driver. |
SQLDescribeParam |
No | ODBC | Returns the description for a specific parameter in a statement. Not supported by Connector/ODBC—the returned results should not be trusted. |
SQLNumParams |
Yes | ISO 92 | Returns the number of parameters in a statement. |
SQLParamData |
Yes | ISO 92 | Used in conjunction with SQLPutData to supply
parameter data at execution time. (Useful for long data
values.) |
SQLPutData |
Yes | ISO 92 | Sends part or all of a data value for a parameter. (Useful for long data values.) |
Table 7.6 ODBC API Calls for Retrieving Results and Information about Results
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLRowCount |
Yes | ISO 92 | Returns the number of rows affected by an insert, update, or delete request. |
SQLNumResultCols |
Yes | ISO 92 | Returns the number of columns in the result set. |
SQLDescribeCol |
Yes | ISO 92 | Describes a column in the result set. |
SQLColAttribute |
Yes | ISO 92 | Describes attributes of a column in the result set. |
SQLColAttributes |
Yes | Deprecated | Describes attributes of a column in the result set. |
SQLFetch |
Yes | ISO 92 | Returns multiple result rows. |
SQLFetchScroll |
Yes | ISO 92 | Returns scrollable result rows. |
SQLExtendedFetch |
Yes | Deprecated | Returns scrollable result rows. |
SQLSetPos |
Yes | ODBC | Positions a cursor within a fetched block of data and enables an application to refresh data in the rowset or to update or delete data in the result set. |
SQLBulkOperations |
Yes | ODBC | Performs bulk insertions and bulk bookmark operations, including update, delete, and fetch by bookmark. |
Table 7.7 ODBC API Calls for Retrieving Error or Diagnostic Information
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLError |
Yes | Deprecated | Returns additional error or status information |
SQLGetDiagField |
Yes | ISO 92 | Returns additional diagnostic information (a single field of the diagnostic data structure). |
SQLGetDiagRec |
Yes | ISO 92 | Returns additional diagnostic information (multiple fields of the diagnostic data structure). |
Table 7.8 ODBC API Calls for Obtaining Information about the Data Source's System Tables (Catalog Functions) Item
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLColumnPrivileges |
Yes | ODBC | Returns a list of columns and associated privileges for one or more tables. |
SQLColumns |
Yes | X/Open | Returns the list of column names in specified tables. |
SQLForeignKeys |
Yes | ODBC | Returns a list of column names that make up foreign keys, if they exist for a specified table. |
SQLPrimaryKeys |
Yes | ODBC | Returns the list of column names that make up the primary key for a table. |
SQLSpecialColumns |
Yes | X/Open | Returns information about the optimal set of columns that uniquely identifies a row in a specified table, or the columns that are automatically updated when any value in the row is updated by a transaction. |
SQLStatistics |
Yes | ISO 92 | Returns statistics about a single table and the list of indexes associated with the table. |
SQLTablePrivileges |
Yes | ODBC | Returns a list of tables and the privileges associated with each table. |
SQLTables |
Yes | X/Open | Returns the list of table names stored in a specific data source. |
Table 7.9 ODBC API Calls for Performing Transactions
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLTransact |
Yes | Deprecated | Commits or rolls back a transaction |
SQLEndTran |
Yes | ISO 92 | Commits or rolls back a transaction. |
Table 7.10 ODBC API Calls for Terminating a Statement
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLFreeStmt |
Yes | ISO 92 | Ends statement processing, discards pending results, and, optionally, frees all resources associated with the statement handle. |
SQLCloseCursor |
Yes | ISO 92 | Closes a cursor that has been opened on a statement handle. |
SQLCancel |
Yes | ISO 92 | Cancels an SQL statement. |
Table 7.11 ODBC API Calls for Terminating a Connection
Function Name | Connector/ODBC Supports? | Standard | Purpose |
---|---|---|---|
SQLDisconnect |
Yes | ISO 92 | Closes the connection. |
SQLFreeHandle |
Yes | ISO 92 | Releases an environment, connection, statement, or descriptor handle. |
SQLFreeConnect |
Yes | Deprecated | Releases connection handle. |
SQLFreeEnv |
Yes | Deprecated | Releases an environment handle. |