SQL Conformance
CodeBase SQL 2.0 for Windows and CodeBase SQL/ODBC fully conform to the ODBC version 2.5 specification for Core API and Level 1 API, and supports most of the Level 2 function calls. The following tables list the ODBC API functions supported by CodeBase SQL/ODBC.
ODBC API Functions supported by CodeBase
| Core Conformance Level |
SQLAllocConnect
SQLAllocEnv
SQLAllocStmt
SQLBindCol
SQLCancel
SQLConnect
SQLDescribeCol
SQLDisconnect
SQLError
SQLExecDirect
SQLExecute
SQLFetch
SQLFreeConnect
SQLFreeEnv
SQLFreeStmt
SQLGetCursorName
SQLNumResultCols
SQLRowCount
SQLSetCursorName
SQLTransact
|
|
| Conformance Level 1 |
SQLBindParameter
SQLColAttributes
SQLColumns
SQLDriverConnect
SQLGetConnectOption
SQLGetData
SQLGetFunctions
SQLGetInfo
SQLGetStmtOption
SQLGetTypeInfo
SQLParamData
SQLPutData
SQLSetConnectOption
SQLSetStmtOption
SQLSpecialColumns
SQLStatistics
SQLTables
|
|
| Conformance Level 2 |
SQLBrowseConnect
SQLColumnPrivileges
SQLDataSources
SQLDescribeParam
SQLDrivers
SQLForeignKeys
SQLMoreResults
SQLNativeSql
SQLNumParams
SQLPrimaryKeys
SQLProcedures
SQLProcedureColumns
SQLTablePrivileges
|
|
Exceptions To ODBC Conformance
The following section contains details on the exceptions to ODBC API conformance as specified in the previous table.
SQLMoreResults
CodeBase SQL/ODBC always returns sql_no_data_found for this function. CodeBase SQL/ODBC supports this function, with its return value, due to requirements of Microsoft Access.
SQLSetStmtOption / SQLGetStmtOption
The following table lists the options CodeBase SQL/ODBC supports for SQLSetStmtOption and SQLGetStmtOption:
Options for SQLSetStmtOption and SQLGetStmtOption
fOption (numerical value) |
vParam |
Comments |
| SQL_MAX_ROWS(1) |
|
See ODBC Programmer’s Reference. |
| SQL_NOSCAN(2) |
|
See ODBC Programmer’s Reference. |
| SQL_MAX_LENGTH(3) |
|
See ODBC Programmer’s Reference. |
| SQL_Async_Enable(4) |
|
See ODBC Programmer’s Reference. |
| SQL_Cursor_Type(6) |
|
See ODBC Programmer’s Reference. |
| SQL_Concurrency(7) |
|
See ODBC Programmer’s Reference. |
| SQL_Rowset_Size(9) |
|
See ODBC Programmer’s Reference. |
| 1151 |
in the format: Tablename,Password(no space between the Tablename and the Password) |
A CodeBase SQL/ODBC extension: appends password for table to an internal list in CodeBase SQL/ODBC so that the user will not have to be prompted for the password. |
| 1153 |
0 (default) turns off table locking; 1 turns on table locking. |
A CodeBase SQL/ODBC extension: When vParam is set to 1, all tables used by the hStmt are exclusively locked when a select statement is executed on the hStmt. The tables remain locked until the hStmt is dropped (by calling SQLFreeStmt with the SQL_DROP option) or the option is set to DEFLOCK and the hStmt is re-executed. Locked tables can only be used by the locking hStmt; they cannot be used by any other hStmts. |
SQLSetConnectOption and SQLGetConnectOption
The following table lists the options CodeBase SQL/ODBC supports for SQLSetConnectOption and SQLGetConnectOption:
CodeBase SQL/ODBC Grammar Conformance
fOption (numerical value) |
vParam |
Comments |
| SQL_ACCESS_MODE(101) |
|
See ODBC Programmer’s Reference. |
| SQL_AUTOCOMMIT(102) |
|
See ODBC Programmer’s Reference. |
| SQL_CURRENT_QUALIFIER(109) |
|
Valid with SQLGetConnectOption. Returns the current table qualifier. For setting a table qualifier, use the use statement.
|
SQLSpecialColumns
CodeBase SQL/ODBC uses unique indexes as the optimal set of columns that uniquely identifies a row in the table. CodeBase SQL/ODBC cannot identify columns that are automatically updated when any value in the row is updated by a transaction.
SQL Conformance
The ODBC version 2.5 specification provides three levels of SQL grammar conformance: Minimum, Core, and Extended. Each higher level provides more fully-implemented data definition and data manipulation language support. CodeBase SQL/ODBC fully supports the Minimum SQL grammar, as well as many Core and Extended grammar statements. CodeBase SQL/ODBC support for SQL grammar is summarized in the following table.
CodeBase SQL/ODBC Grammar Conformance
| SQL Grammar Statement |
Minimum |
Core |
Extended |
| Create Index |
|
• |
|
| Create Table |
• |
|
|
| Create View |
|
• |
|
| Delete (searched) |
• |
|
|
| Drop Index |
|
• |
|
| Drop Table |
• |
|
|
| Drop View |
|
• |
|
| Insert |
• |
|
|
| Left Outer Join |
|
|
• |
| Select |
• |
|
|
| - approximate numeric literal |
|
• |
|
| - between predicate |
|
• |
|
| - correlation name |
|
• |
|
| - date arithmetic |
|
|
• |
| - date literal |
|
|
• |
| - exact numeric literal |
|
• |
|
| - extended predicates |
|
|
• |
| - in predicate |
|
• |
|
| - set function |
|
• |
|
| - time literal |
|
|
• |
| - timestamp literal |
|
|
• |
| Subqueries |
|
• |
|
| Unions |
|
|
• |
| Update (searched) |
• |
|
|
| Use (this is an extension to ODBC SQL grammar) |
|
|
• |
|