Поделиться через


Соответствие атрибутам

В следующей таблице указывается уровень соответствия каждого атрибута среды ODBC, где это хорошо определено.

Функция Уровень соответствия
SQL_ATTR_CONNECTION_POOLING --[1]
SQL_ATTR_CP_MATCH --[1]
SQL_ATTR_ODBC_VER Core
SQL_ATTR_OUTPUT_NTS --[1]

[1] Это необязательная функция, так как она не является частью уровней соответствия.

В следующей таблице указывается уровень соответствия каждого атрибута подключения ODBC, где это хорошо определено.

Функция Уровень соответствия
SQL_ATTR_ACCESS_MODE Core
SQL_ATTR_ASYNC_ENABLE Уровень 1/Уровень 2[1]
SQL_ATTR_AUTO_IPD Уровень 2
SQL_ATTR_AUTOCOMMIT Уровень 1
SQL_ATTR_CONNECTION_DEAD (Атрибут указания неактивного соединения) Уровень 1
SQL_ATTR_CONNECTION_TIMEOUT Уровень 2
SQL_ATTR_CURRENT_CATALOG Уровень 2
SQL_ATTR_LOGIN_TIMEOUT Уровень 2
SQL_ATTR_ODBC_CURSORS Core
SQL_ATTR_PACKET_SIZE Уровень 2
SQL_ATTR_QUIET_MODE Core
SQL_ATTR_TRACE Core
SQL_ATTR_TRACEFILE Core
SQL_ATTR_TRANSLATE_LIB Core
SQL_ATTR_TRANSLATE_OPTION Core
SQL_ATTR_TXN_ISOLATION (уровень изоляции транзакции) Уровень 1/Уровень 2[2]

[1] Приложения, поддерживающие асинхронность на уровне подключения (требуется для уровня 1), должны поддерживать настройку этого атрибута для SQL_TRUE путем вызова SQLSetConnectAttr; Атрибут не должен иметь значение, отличное от значения по умолчанию, через SQLSetStmtAttr. Приложения, поддерживающие асинхронный уровень инструкции (требуется для уровня 2), должны поддерживать настройку этого атрибута для SQL_TRUE с помощью любой функции.

[2] Для соответствия интерфейса уровня 1 драйвер должен поддерживать одно значение в дополнение к значению по умолчанию, определяемого драйвером (доступно путем вызова SQLGetInfo с параметром SQL_DEFAULT_TXN_ISOLATION). Для соответствия интерфейса уровня 2 драйвер также должен поддерживать SQL_TXN_SERIALIZABLE.

В следующей таблице указывается уровень соответствия каждого атрибута инструкции ODBC, где это хорошо определено.

Функция Уровень соответствия
SQL_ATTR_APP_PARAM_DESC Core
SQL_ATTR_APP_ROW_DESC Core
SQL_ATTR_ASYNC_ENABLE Уровень 1/Уровень 2[1]
SQL_ATTR_CONCURRENCY Уровень 1/Уровень 2[2]
SQL_ATTR_CURSOR_SCROLLABLE Уровень 1
SQL_ATTR_CURSOR_SENSITIVITY Уровень 2
SQL_ATTR_CURSOR_TYPE Ядро/Уровень 2[3]
SQL_ATTR_ENABLE_AUTO_IPD Уровень 2
SQL_ATTR_FETCH_BOOKMARK_PTR Уровень 2
SQL_ATTR_IMP_PARAM_DESC Core
SQL_ATTR_IMP_ROW_DESC Core
SQL_ATTR_KEYSET_SIZE Уровень 2
SQL_ATTR_MAX_LENGTH Уровень 1
SQL_ATTR_MAX_ROWS Уровень 1
SQL_ATTR_METADATA_ID Core
SQL_ATTR_NOSCAN Core
SQL_ATTR_PARAM_BIND_OFFSET_PTR Core
SQL_ATTR_PARAM_BIND_TYPE Core
SQL_ATTR_PARAM_OPERATION_PTR Core
SQL_ATTR_PARAM_STATUS_PTR Core
SQL_ATTR_PARAMS_PROCESSED_PTR Core
SQL_ATTR_PARAMSET_SIZE Core
SQL_ATTR_QUERY_TIMEOUT Уровень 2
SQL_ATTR_RETRIEVE_DATA Уровень 1
SQL_ATTR_ROW_ARRAY_SIZE Core
SQL_ATTR_ROW_BIND_OFFSET_PTR Core
SQL_ATTR_ROW_BIND_TYPE Core
SQL_ATTR_ROW_NUMBER Уровень 1
SQL_ATTR_ROW_OPERATION_PTR Уровень 1
SQL_ATTR_ROW_STATUS_PTR Core
SQL_ATTR_ROWS_FETCHED_PTR Core
SQL_ATTR_SIMULATE_CURSOR Уровень 2
SQL_ATTR_USE_BOOKMARKS Уровень 2

[1] Приложения, поддерживающие асинхронность на уровне подключения (требуется для уровня 1), должны поддерживать настройку этого атрибута для SQL_TRUE путем вызова SQLSetConnectAttr; Атрибут не должен иметь значение, отличное от значения по умолчанию, через SQLSetStmtAttr. Приложения, поддерживающие асинхронный уровень инструкции (требуется для уровня 2), должны поддерживать настройку этого атрибута для SQL_TRUE с помощью любой функции.

[2] Для соответствия интерфейса уровня 2 драйвер должен поддерживать SQL_CONCUR_READ_ONLY и хотя бы одно другое значение.

[3] Для соответствия интерфейса уровня 1 драйвер должен поддерживать SQL_CURSOR_FORWARD_ONLY и хотя бы одно другое значение. Для соответствия интерфейса уровня 2 драйвер должен поддерживать все значения, определенные в этом документе.