属性の適合性
次の表は、各 ODBC 環境属性の準拠レベルを示しています。この属性は明確に定義されています。
機能 | 準拠レベル |
---|---|
SQL_ATTR_CONNECTION_POOLING | --[1] |
SQL_ATTR_CP_MATCH | --[1] |
SQL_ATTR_ODBC_VER | コア |
SQL_ATTR_OUTPUT_NTS | --[1] |
[1] これは省略可能な機能であり、準拠レベルの一部ではありません。
次の表は、各 ODBC 接続属性の準拠レベルを示しています。ここでは、これが適切に定義されています。
機能 | 準拠レベル |
---|---|
SQL_ATTR_ACCESS_MODE | コア |
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 | コア |
SQL_ATTR_PACKET_SIZE | レベル 2 |
SQL_ATTR_QUIET_MODE | コア |
SQL_ATTR_TRACE | コア |
SQL_ATTR_TRACEFILE | コア |
SQL_ATTR_TRANSLATE_LIB | コア |
SQL_ATTR_TRANSLATE_OPTION | コア |
SQL_ATTR_TXN_ISOLATION | レベル 1/レベル 2[2] |
[1] 接続レベルの非同期 (レベル 1 に必要) をサポートするアプリケーションでは、SQLSetConnectAttr を呼び出してこの属性を SQL_TRUE に設定する必要があります。この属性は、SQLSetStmtAttr を使用して既定値以外の値に設定する必要はありません。 ステートメント レベルの非同期性 (レベル 2 に必須) をサポートするアプリケーションでは、この属性をいずれかの関数を使用して SQL_TRUE に設定する必要があります。
[2] レベル 1 のインターフェイス準拠の場合、ドライバーは、ドライバー定義の既定値に加えて 1 つの値をサポートする必要があります (SQL_DEFAULT_TXN_ISOLATION オプションを使用して SQLGetInfo を呼び出すことによって使用できます)。 レベル 2 インターフェイスに準拠するには、ドライバーもSQL_TXN_SERIALIZABLEをサポートする必要があります。
次の表は、各 ODBC ステートメント属性の準拠レベルを示しています。ここでは、これが明確に定義されています。
機能 | 準拠レベル |
---|---|
SQL_ATTR_APP_PARAM_DESC | コア |
SQL_ATTR_APP_ROW_DESC | コア |
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 | コア |
SQL_ATTR_IMP_ROW_DESC | コア |
SQL_ATTR_KEYSET_SIZE | レベル 2 |
SQL_ATTR_MAX_LENGTH | レベル 1 |
SQL_ATTR_MAX_ROWS | レベル 1 |
SQL_ATTR_METADATA_ID | コア |
SQL_ATTR_NOSCAN | コア |
SQL_ATTR_PARAM_BIND_OFFSET_PTR | コア |
SQL_ATTR_PARAM_BIND_TYPE | コア |
SQL_ATTR_PARAM_OPERATION_PTR | コア |
SQL_ATTR_PARAM_STATUS_PTR | コア |
SQL_ATTR_PARAMS_PROCESSED_PTR | コア |
SQL_ATTR_PARAMSET_SIZE | コア |
SQL_ATTR_QUERY_TIMEOUT | レベル 2 |
SQL_ATTR_RETRIEVE_DATA | レベル 1 |
SQL_ATTR_ROW_ARRAY_SIZE | コア |
SQL_ATTR_ROW_BIND_OFFSET_PTR | コア |
SQL_ATTR_ROW_BIND_TYPE | コア |
SQL_ATTR_ROW_NUMBER | レベル 1 |
SQL_ATTR_ROW_OPERATION_PTR | レベル 1 |
SQL_ATTR_ROW_STATUS_PTR | コア |
SQL_ATTR_ROWS_FETCHED_PTR | コア |
SQL_ATTR_SIMULATE_CURSOR | レベル 2 |
SQL_ATTR_USE_BOOKMARKS | レベル 2 |
[1] 接続レベルの非同期 (レベル 1 に必要) をサポートするアプリケーションでは、SQLSetConnectAttr を呼び出してこの属性を SQL_TRUE に設定する必要があります。この属性は、SQLSetStmtAttr を使用して既定値以外の値に設定する必要はありません。 ステートメント レベルの非同期性 (レベル 2 に必須) をサポートするアプリケーションでは、この属性をいずれかの関数を使用して SQL_TRUE に設定する必要があります。
[2] レベル 2 のインターフェイス準拠の場合、ドライバーは SQL_CONCUR_READ_ONLY と少なくとも 1 つの他の値をサポートする必要があります。
[3] レベル 1 のインターフェイス準拠の場合、ドライバーはSQL_CURSOR_FORWARD_ONLY と少なくとも 1 つの他の値をサポートする必要があります。 レベル 2 のインターフェイスに準拠するには、ドライバーは、このドキュメントで定義されているすべての値をサポートする必要があります。