ODBC Conformance
Show this topic in Library frames
ODBC Interface Conformance
The Pervasive ODBC Engine Interface fully conforms to the ODBC v3.51 specifications for Core, Level 1, and Level 2 interface conformance levels.
Exceptions to ODBC Interface Conformance
Core Level
SQL_BEST_ROWID
The Pervasive ODBC Engine Interface uses unique indexes as the optimal set of columns that identifies a row in the table. When a new row is inserted, the Pervasive ODBC Engine Interface does not return the values for autoincrement columns. You may determine the value for an autoincrement column through the use of the @@IDENTITY variable. See @@IDENTITY .
Level 2
SQL_ROWVER
See SQL_BEST_ROWID above.
SQL_ATTR_LOGIN_TIMEOUT
Not supported
ODBC API Conformance
The following table lists the ODBC API functions supported by the Pervasive ODBC Engine Interface and the ODBC Conformance level.
Table 2-4 Interface-supported ODBC API Functions
|
ODBC Function
|
ODBC Conformance Level
|
|
SQLAllocHandle
|
Core
|
|
SQLBindCol
|
Core
|
|
SQLBindParameter
|
Level 1[1]
|
|
SQLBrowseConnect
|
Level 1
|
|
SQLBulkOperations
|
Level 1
|
|
SQLCancel
|
Core[1]
|
|
SQLCloseCursor
|
Core
|
|
SQLColAttribute
|
Core[1]
|
|
SQLColumnPrivileges
|
Level 2
|
|
SQLColumns
|
Core
|
|
SQLConnect
|
Core
|
|
SQLCopyDesc
|
Core
|
|
SQLDataSources
|
Core
|
|
SQLDescribeCol
|
Core[1]
|
|
SQLDescribeParam
|
Level 2
|
|
SQLDisconnect
|
Core
|
|
SQLDriverConnect
|
Core
|
|
SQLDrivers
|
Core
|
|
SQLEndTran
|
Core
|
|
SQLExecDirect
|
Core
|
|
SQLExecute
|
Core
|
|
SQLFetch
|
Core
|
|
SQLFetchScroll
|
Core
|
|
SQLForeignKeys
|
Level 2
|
|
SQLFreeHandle
|
Core
|
|
SQLFreeStmt
|
Core
|
|
SQLGetConnectAttr
|
Core
|
|
SQLGetCursorName
|
Core
|
|
SQLGetData
|
Core
|
|
SQLGetDescField
|
Core
|
|
SQLGetDescRec
|
Core
|
|
SQLGetDiagField
|
Core
|
|
SQLGetDiagRec
|
Core
|
|
SQLGetEnvAttr
|
Core
|
|
SQLGetFunctions
|
Core
|
|
SQLGetInfo
|
Core
|
|
SQLGetStmtAttr
|
Core
|
|
SQLGetTypeInfo
|
Core
|
|
SQLMoreResults
|
Level 1
|
|
SQLNativeSql
|
Core
|
|
SQLNumParams
|
Core
|
|
SQLNumResultCols
|
Core
|
|
SQLParamData
|
Core
|
|
SQLPrepare
|
Core
|
|
SQLPrimaryKeys
|
Level 1
|
|
SQLProcedureColumns
|
Level 1
|
|
SQLProcedures
|
Level 1
|
|
SQLPutData
|
Core
|
|
SQLRowCount
|
Core
|
|
SQLSetConnectAttr
|
Core
|
|
SQLSetCursorName
|
Core
|
|
SQLSetDescRec
|
Core
|
|
SQLSetEnvAttr
|
Core
|
|
SQLSetPos
|
Level 1
|
|
SQLSetStmtAttr
|
Core
|
|
SQLStatistics
|
Core
|
|
SQLTablePrivileges
|
Level 1
|
|
SQLTables
|
Core
|
ODBC Data Types Not Supported
The following C data types are not supported:
- SQL_C_NUMERIC
- SQL_C_SBIGINT
- SQL_C_UBIGINT
Exceptions to ODBC API Conformance
The following section contains details on the exceptions to ODBC API conformance as specified in Table 2-4 .
SQLGetTypeInfo
SQLGetTypeInfo generates a list of native data type names (type_name) specified by the Pervasive ODBC Engine Interface. For example, SQL_CHAR is mapped to CHARACTER. Use the names which are returned from this function for the data type names for columns in a CREATE TABLE or ALTER TABLE statement or for parameters for procedures or declared variables in procedures and triggers.
SQLSpecialColumns
The Pervasive ODBC Engine Interface uses unique indexes as the optimal set of columns that uniquely identifies a row in the table. When a new row is inserted, the Pervasive ODBC Engine Interface does not return the values for autoincrement columns. You may determine the value for an autoincrement column through the use of the @@IDENTITY variable. See @@IDENTITY .
SQLGetInfo
The Pervasive ODBC Interface returns identical values for SQL_DRIVER_VER and SQL_DBMS_VER. This version value is returned in the following format:
This value can be interpreted as four components, which are shown in the following table:
|
Part
|
Value
|
Description
|
|
09
|
Major version
|
The major version of the Pervasive.SQL database engine.
|
|
00
|
Minor version
|
The minor version of the Pervasive.SQL database engine, which is typically updated in a service pack.
|
|
0147
|
Build number
|
The build further specifies the release by marking the time at which Pervasive Software generated the release.
|
|
010
|
Point build
|
A minor update to the build. The build number and point build uniquely identify a product release created at a specific time.
|
The following table summarizes the expected format of other values typically returned by SQLGetInfo.
|
Item
|
Value
|
|
SQL_DRIVER_NAME
|
W3ODBCCI.DLL
|
|
SQL_DRIVER_VER
|
09.00.0147 010
|
|
SQL_DRIVER_ODBC_VER
|
03.51
|
|
SQL_DBMS_NAME
|
Pervasive.SQL
|
|
SQL_DBMS_VER
|
09.00.0147 010
|
|
SQL_ODBC_VER
|
03.52.0000
|
|
SQL_ODBC_API_CONFORMANCE
|
SQL_OAC_LEVEL2
|
|
SQL_ODBC_INTERFACE_CONFORMANCE
|
SQL_OIC_LEVEL2
|
ODBC Attribute Conformance
The Pervasive ODBC Engine Interface fully conforms to the ODBC v3.51 Attribute conformance.
Exceptions to ODBC Attribute Conformance
Statement Attribute Conformance
The following table lists the exceptions to ODBC Statement Attribute conformance:
Table 2-5 Exceptions to ODBC Statement Attribute conformance
|
fOption (numerical value)
|
Comments
|
|
SQL_ATTR_QUERY_TIMEOUT (0)
|
Supported through SQLSetStmtAttr and SQLSetConnectAttr. Applies only to SQLExecDirect, SQLExecute, SQLFetch, and SQLExtendedFetch. Does not apply to DDL statements.
|
|
SQL_ATTR_METADATA_ID (10014)
|
The default value is SQL_FALSE. Pervasive ODBC Driver does not allow setting this attribute's value to SQL_TRUE.
|
|
SQL_ATTR_ENABLE_AUTO_IPD (15)
|
The default value is SQL_TRUE. Pervasive ODBC Driver does not allow setting this attribute value to SQL_FALSE.
|
|
SQL_ATTR_PARAM_BIND_TYPE (18)
|
Only SQL_PARAM_BIND_BY_COLUMN is supported.
|
Connection Attribute Conformance
The following table lists the exceptions to ODBC Connection Attribute conformance:
Table 2-6 Exceptions to ODBC Connection Attribute conformance
|
fOption (numerical value)
|
Comments
|
|
SQL_ATTR_AUTO_IPD (10001)
|
The default value is SQL_TRUE. The Pervasive ODBC Driver does not allow setting this attribute value to SQL_FALSE.
|
|
SQL_ATTR_METADATA_ID (10014)
|
The default value is SQL_FALSE. The Pervasive ODBC Driver does not allow setting this attribute's value to SQL_TRUE
|
|
SQL_ATTR_CONNECTION_TIMEOUT (113)
|
The default value is 0. No other value is supported.
|
ODBC Descriptor Field Conformance
The Pervasive ODBC Engine Interface fully conforms to the ODBC v3.51 Descriptor field conformance.
Exceptions to ODBC Descriptor Conformance
The following table lists the exceptions to ODBC Descriptor Field conformance:
Table 2-7 Exceptions to ODBC Descriptor conformance
|
fOption (numerical value)
|
Comments
|
|
SQL_DESC_BIND_TYPE
|
For APDs, only SQL_BIND_BY_COLUMN is supported.
|
|
SQL_DESC_ROWVER
|
|