スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド

[目次][索引][前へ][次へ]

14.6 ODBC関数の各属性の指定可否

<この節の構成>
(1) SQLSetConnectAttr
(2) SQLGetConnectAttr
(3) SQLSetDescField
(4) SQLGetDescField
(5) SQLSetEnvAttr
(6) SQLGetEnvAttr
(7) SQLSetStmtAttr
(8) SQLGetStmtAttr
(9) SQLGetInfo
(10) SQLColAttribute

(1) SQLSetConnectAttr

SQLSetConnectAttrで指定できるODBC接続属性を次の表に示します。

表14-6 SQLSetConnectAttrで指定できるODBC接続属性

属性 指定可否 準拠レベル 備考
SQL_ATTR_ACCESS_MODE ○ Core −
SQL_ATTR_ASYNC_ENABLE ○ Level 1 −
SQL_ATTR_AUTO_IPD × Level 2 −
SQL_ATTR_AUTO_COMMIT ○ Level 1 −
SQL_ATTR_CONNECTION_DEAD × Level 1 −
SQL_ATTR_CONNECTION_TIMEOUT ○ Level 2 値0だけ指定できます。それ以外はエラーとなります。
SQL_ATTR_CURRENT_CATALOG × Level 2 −
SQL_ATTR_LOGIN_TIMEOUT ○ Level 2 値0だけ指定できます。それ以外も0が設定されます。
SQL_ATTR_METADATA_ID × Core −
SQL_ATTR_ODBC_CURSORS × Core −
SQL_ATTR_PACKET_SIZE × Level 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_ANSI_APP ○ 既定されていません。 −
SQL_ATTR_TXN_ISOLATION ○ Level 1 −
SQL_ATTR_ENLIST_IN_DTC ○ 既定されていません。 −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(2) SQLGetConnectAttr

SQLGetConnectAttrで指定できるODBC接続属性を次の表に示します。

表14-7 SQLGetConnectAttrで指定できるODBC接続属性

属性 指定可否 準拠レベル 備考
SQL_ATTR_ACCESS_MODE ○ Core −
SQL_ATTR_ASYNC_ENABLE ○ Level 1 −
SQL_ATTR_AUTO_IPD ○ Level 2 −
SQL_ATTR_AUTO_COMMIT ○ Level 1 −
SQL_ATTR_CONNECTION_DEAD ○ Level 1 −
SQL_ATTR_CONNECTION_TIMEOUT × Level 2 −
SQL_ATTR_CURRENT_CATALOG × Level 2 −
SQL_ATTR_LOGIN_TIMEOUT × Level 2 −
SQL_ATTR_METADATA_ID ○ Core −
SQL_ATTR_ODBC_CURSORS × Core −
SQL_ATTR_PACKET_SIZE × Level 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_ANSI_APP ○ 既定されていません。 −
SQL_ATTR_TXN_ISOLATION ○ Level 1 −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(3) SQLSetDescField

SQLSetDescFieldで指定できるODBCディスクリプタ属性を次の表に示します。

表14-8 SQLSetDescFieldで指定できるODBCディスクリプタ属性

属性 指定可否 準拠レベル 備考
SQL_DESC_ALLOC_TYPE × Core −
SQL_DESC_ARRAY_SIZE ○ Core −
SQL_DESC_ARRAY_STATUS_PTR ○ Core −
SQL_DESC_BIND_OFFSET_PTR ○ Core −
SQL_DESC_DESC_BIND_TYPE ○ Core −
SQL_DESC_COUNT ○ Core −
SQL_DESC_ROWS_PROCESSED_PTR ○ Core −
SQL_DESC_AUTO_UNIQUE_VALUE × Level 2 −
SQL_DESC_BASE_COLUMN_NAME × Core −
SQL_DESC_BASE_TABLE_NAME × Level 1 −
SQL_DESC_CASE_SENSITIVE × Core −
SQL_DESC_CATALOG_NAME × Level 2 −
SQL_DESC_CONCISE_TYPE ○ Core −
SQL_DESC_DATA_PTR ○ Core −
SQL_DESC_DATETIME_INTERVAL_CODE ○ Core −
SQL_DESC_DATETIME_INTERVAL_PRECISION ○ Core −
SQL_DESC_SQL_DESC_DISPLAY_SIZE × Core −
SQL_DESC_FIXED_PREC_SCALE × Core −
SQL_DESC_INDICATOR_PTR ○ Core −
SQL_DESC_LABEL × Level 2 −
SQL_DESC_LENGTH ○ Core −
SQL_DESC_LITERAL_PREFIX × Core −
SQL_DESC_LITERAL_SUFFIX × Core −
SQL_DESC_LOCAL_TYPE_NAME × Core −
SQL_DESC_NAME ○ Core −
SQL_DESC_NULLABLE × Core −
SQL_DESC_NUM_PREC_RADIX ○ 既定されていません。 −
SQL_DESC_OCTET_LENGTH ○ Core −
SQL_DESC_OCTET_LENGTH_PTR ○ Core −
SQL_DESC_PARAMETER_TYPE ○ Core −
SQL_DESC_PRECISION ○ Core −
SQL_DESC_ROWVER × Level 1 −
SQL_DESC_SCALE ○ Core −
SQL_DESC_SCHEMA_NAME × Level 1 −
SQL_DESC_SEARCHABLE × Core −
SQL_DESC_TABLE_NAME × Level 1 −
SQL_DESC_TYPE ○ Core −
SQL_DESC_TYPE_NAME × Core −
SQL_DESC_UNNAMED ○ Core −
SQL_DESC_UNSIGNED × Core −
SQL_DESC_UPDATABLE × Core −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(4) SQLGetDescField

SQLGetDescFieldで指定できるODBCディスクリプタ属性を次の表に示します。

表14-9 SQLGetDescFieldで指定できるODBCディスクリプタ属性

属性 指定可否 準拠レベル 備考
SQL_DESC_ALLOC_TYPE ○ Core −
SQL_DESC_ARRAY_SIZE ○ Core −
SQL_DESC_ARRAY_STATUS_PTR ○ Core −
SQL_DESC_BIND_OFFSET_PTR ○ Core −
SQL_DESC_DESC_BIND_TYPE ○ Core −
SQL_DESC_COUNT ○ Core −
SQL_DESC_ROWS_PROCESSED_PTR ○ Core −
SQL_DESC_AUTO_UNIQUE_VALUE ○ Level 2 −
SQL_DESC_BASE_COLUMN_NAME ○ Core −
SQL_DESC_BASE_TABLE_NAME ○ Level 1 −
SQL_DESC_CASE_SENSITIVE ○ Core −
SQL_DESC_CATALOG_NAME ○ Level 2 −
SQL_DESC_CONCISE_TYPE ○ Core −
SQL_DESC_DATA_PTR ○ Core −
SQL_DESC_DATETIME_INTERVAL_CODE ○ Core −
SQL_DESC_DATETIME_INTERVAL_PRECISION ○ Core −
SQL_DESC_SQL_DESC_DISPLAY_SIZE ○ Core −
SQL_DESC_FIXED_PREC_SCALE ○ Core −
SQL_DESC_INDICATOR_PTR ○ Core −
SQL_DESC_LABEL ○ Level 2 −
SQL_DESC_LENGTH ○ Core −
SQL_DESC_LITERAL_PREFIX ○ Core −
SQL_DESC_LITERAL_SUFFIX ○ Core −
SQL_DESC_LOCAL_TYPE_NAME ○ Core −
SQL_DESC_NAME ○ Core −
SQL_DESC_NULLABLE ○ Core −
SQL_DESC_NUM_PREC_RADIX ○ 既定されていません。 −
SQL_DESC_OCTET_LENGTH ○ Core −
SQL_DESC_OCTET_LENGTH_PTR ○ Core −
SQL_DESC_PARAMETER_TYPE ○ Core −
SQL_DESC_PRECISION ○ Core −
SQL_DESC_ROWVER × Level 1 −
SQL_DESC_SCALE ○ Core −
SQL_DESC_SCHEMA_NAME ○ Level 1 −
SQL_DESC_SEARCHABLE ○ Core −
SQL_DESC_TABLE_NAME ○ Level 1 −
SQL_DESC_TYPE ○ Core −
SQL_DESC_TYPE_NAME ○ Core −
SQL_DESC_UNNAMED ○ Core −
SQL_DESC_UNSIGNED ○ Core −
SQL_DESC_UPDATABLE ○ Core −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(5) SQLSetEnvAttr

SQLSetEnvAttrで指定できるODBC環境属性を次の表に示します。

表14-10 SQLSetEnvAttrで指定できるODBC環境属性

属性 指定可否 準拠レベル 備考
SQL_ATTR_CONNECTION_POOLING ○ 既定されていません。 Conformance Levelに含まれません。
SQL_ATTR_CP_MATCH ○ 既定されていません。 Conformance Levelに含まれません。
SQL_ATTR_ODBC_VERSION ○ Core −
SQL_ATTR_OUTPUT_NTS ○ 既定されていません。 Conformance Levelに含まれません。

(凡例)
○:指定できます。
−:特にありません。

(6) SQLGetEnvAttr

SQLGetEnvAttrで指定できるODBC環境属性を次の表に示します。

表14-11 SQLGetEnvAttrで指定できるODBC環境属性

属性 指定可否 準拠レベル 備考
SQL_ATTR_CONNECTION_POOLING ○ 既定されていません。 Conformance Levelに含まれません。
SQL_ATTR_CP_MATCH ○ 既定されていません。 Conformance Levelに含まれません。
SQL_ATTR_ODBC_VERSION ○ Core −
SQL_ATTR_OUTPUT_NTS ○ 既定されていません。 Conformance Levelに含まれません。

(凡例)
○:指定できます。
−:特にありません。

(7) SQLSetStmtAttr

SQLSetStmtAttrで指定できるODBCステートメント属性を次の表に示します。

表14-12 SQLSetStmtAttrで指定できるODBCステートメント属性

属性 指定可否 準拠レベル 備考
SQL_ATTR_APP_PARAM_DESC ○ Core −
SQL_ATTR_APP_ROW_DESC ○ Core −
SQL_ATTR_ASYNC_ENABLE ○ Level 1 −
SQL_ATTR_CONCURRENCY ○ Level 2 −
SQL_ATTR_CURSOR_SCROLLABLE ○ Level 1 −
SQL_ATTR_CURSOR_SENSITIVITY ○ Level 2 −
SQL_ATTR_CURSOR_TYPE ○ Level 2 SQL_CURSOR_FORWARD_ONLYだけ指定できます。それ以外を指定してもSQL_CURSOR_FORWARD_ONLYが設定されます。
SQL_ATTR_ENABLE_AUTO_IPD ○ Level 2 −
SQL_ATTR_FETCH_BOOKMARK_PTR × Level 2 −
SQL_ATTR_IMP_PARAM_DESC × Core −
SQL_ATTR_IMP_ROW_DESC × Core −
SQL_ATTR_KEYSET_SIZE × Level 2 −
SQL_ATTR_MAX_LENGTH ○ Level 1 −
SQL_ATTR_MAX_ROWS ○ Level 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 × Level 2 −
SQL_ATTR_RETRIEVE_DATA ○ Level 1 −
SQL_ATTR_ROW_ARRAY_SIZE ○ Core −
SQL_ATTR_ROW_BIND_OFFSET_PTR ○ Core −
SQL_ATTR_ROW_BIND_TYPE ○ Core −
SQL_ATTR_ROW_NUMBER × Level 1 −
SQL_ATTR_ROW_OPERATION_PTR ○ Level 1 −
SQL_ATTR_ROW_STATUS_PTR ○ Core −
SQL_ATTR_ROWS_FETCHED_PTR ○ Core −
SQL_ATTR_SIMULATE_CURSOR × Level 2 −
SQL_ATTR_USE_BOOKMARKS × Level 2 −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(8) SQLGetStmtAttr

SQLGetStmtAttrで指定できるODBCステートメント属性を次の表に示します。

表14-13 SQLGetStmtAttrで指定できるODBCステートメント属性

属性 指定可否 準拠レベル 備考
SQL_ATTR_APP_PARAM_DESC ○ Core −
SQL_ATTR_APP_ROW_DESC ○ Core −
SQL_ATTR_ASYNC_ENABLE ○ Level 1 −
SQL_ATTR_CONCURRENCY ○ Level 2 −
SQL_ATTR_CURSOR_SCROLLABLE ○ Level 1 −
SQL_ATTR_CURSOR_SENSITIVITY ○ Level 2 −
SQL_ATTR_CURSOR_TYPE ○ Level 2 −
SQL_ATTR_ENABLE_AUTO_IPD ○ Level 2 −
SQL_ATTR_FETCH_BOOKMARK_PTR × Level 2 −
SQL_ATTR_IMP_PARAM_DESC ○ Core −
SQL_ATTR_IMP_ROW_DESC ○ Core −
SQL_ATTR_KEYSET_SIZE × Level 2 −
SQL_ATTR_MAX_LENGTH ○ Level 1 −
SQL_ATTR_MAX_ROWS ○ Level 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 × Level 2 −
SQL_ATTR_RETRIEVE_DATA ○ Level 1 −
SQL_ATTR_ROW_ARRAY_SIZE ○ Core −
SQL_ATTR_ROW_BIND_OFFSET_PTR × Core −
SQL_ATTR_ROW_BIND_TYPE × Core −
SQL_ATTR_ROW_NUMBER × Level 1 −
SQL_ATTR_ROW_OPERATION_PTR ○ Level 1 −
SQL_ATTR_ROW_STATUS_PTR ○ Core −
SQL_ATTR_ROWS_FETCHED_PTR ○ Core −
SQL_ATTR_SIMULATE_CURSOR × Level 2 −
SQL_ATTR_USE_BOOKMARKS × Level 2 −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(9) SQLGetInfo

SQLGetInfoで指定できる情報型を次に示します。

(a) ドライバの情報

アクティブステートメントの数,データソース名,及びインタフェース規格の合致レベルなどのODBCドライバについての情報を返却します。SQLGetInfoで指定できるドライバの情報を次の表に示します。

表14-14 SQLGetInfoで指定できるドライバの情報

オプション値 指定可否 備考
SQL_ACTIVE_ENVIRONMENTS ○ −
SQL_ASYNC_MODE ○ −
SQL_BATCH_ROW_COUNT ○ −
SQL_BATCH_SUPPORT ○ −
SQL_DATA_SOURCE_NAME ○ −
SQL_DRIVER_HDBC ○ −
SQL_DRIVER_HDESC ○ ドライバマネージャが返却します。
SQL_DRIVER_HENV ○ −
SQL_DRIVER_HLIB ○ ドライバマネージャが返却します。
SQL_DRIVER_HSTMT ○ −
SQL_DRIVER_NAME ○ −
SQL_DRIVER_ODBC_VER ○ −
SQL_DRIVER_VER ○ −
SQL_DYNAMIC_CURSOR_ATTRIBUTES1 ○ −
SQL_DYNAMIC_CURSOR_ATTRIBUTES2 ○ −
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 ○ −
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 ○ −
SQL_FILE_USAGE ○ −
SQL_GETDATA_EXTENSIONS ○ −
SQL_INFO_SCHEMA_VIEWS ○ −
SQL_KEYSET_CURSOR_ATTRIBUTES1 ○ −
SQL_KEYSET_CURSOR_ATTRIBUTES2 ○ −
SQL_MAX_ASYNC_CONCURRENT_STATEMENTS ○ −
SQL_MAX_CONCURRENT_ACTIVITIES ○ −
SQL_MAX_DRIVER_CONNECTIONS ○ −
SQL_ODBC_INTERFACE_CONFORMANCE ○ −
SQL_ODBC_VER ○ −
SQL_PARAM_ARRAY_ROW_COUNTS ○ −
SQL_PARAM_ARRAY_SELECTS ○ −
SQL_ROW_UPDATES ○ −
SQL_SEARCH_PATTERN_ESCAPE ○ −
SQL_SERVER_NAME ○ −
SQL_STATIC_CURSOR_ATTRIBUTES1 ○ −
SQL_STATIC_CURSOR_ATTRIBUTES2 ○ −

(凡例)
○:指定できます。
−:特にありません。

(b) DBMS製品の情報

DBMS製品の名称やバージョンなどの情報を返却します。SQLGetInfoで指定できるDBMS製品の情報を次の表に示します。

表14-15 SQLGetInfoで指定できるDBMS製品の情報

オプション値 指定可否 備考
SQL_DATABASE_NAME ○ −
SQL_DBMS_NAME ○ −
SQL_DBMS_VER ○ −

(凡例)
○:指定できます。
−:特にありません。

(c) データソースの情報

カーソルの特性やトランザクションの機能など,データソースの情報を返却します。SQLGetInfoで指定できるデータソースの情報を次の表に示します。

表14-16 SQLGetInfoで指定できるデータソースの情報

オプション値 指定可否 備考
SQL_ACCESSIBLE_PROCEDURES ○ −
SQL_ACCESSIBLE_TABLES ○ −
SQL_BOOKMARK_PERSISTENCE ○ −
SQL_CATALOG_TERM ○ −
SQL_COLLATION_SEQ ○ −
SQL_CONCAT_NULL_BEHAVIOR ○ −
SQL_CURSOR_COMMIT_BEHAVIOR ○ −
SQL_CURSOR_ROLLBACK_BEHAVIOR ○ −
SQL_CURSOR_SENSITIVITY ○ −
SQL_DATA_SOURCE_READ_ONLY ○ −
SQL_DEFAULT_TXN_ISOLATION ○ −
SQL_DESCRIBE_PARAMETER ○ −
SQL_MULT_RESULT_SETS ○ −
SQL_MULTIPLE_ACTIVE_TXN ○ −
SQL_NEED_LONG_DATA_LEN ○ −
SQL_NULL_COLLATION ○ −
SQL_PROCEDURE_TERM ○ −
SQL_SCHEMA_TERM ○ −
SQL_SCROLL_OPTIONS ○ −
SQL_TABLE_TERM ○ −
SQL_TXN_CAPABLE ○ −
SQL_TXN_ISOLATION_OPTION ○ −
SQL_USER_NAME ○ −

(凡例)
○:指定できます。
−:特にありません。

(d) SQLステートメントの情報

データソースでサポートしているSQLステートメントについての情報を返却します。SQLGetInfoで指定できるSQLステートメントの情報を次の表に示します。

表14-17 SQLGetInfoで指定できるSQLステートメントの情報

オプション値 指定可否 備考
SQL_AGGREGATE_FUNCTIONS ○ −
SQL_ALTER_DOMAIN ○ −
SQL_ALTER_SCHEMA × −
SQL_ALTER_TABLE ○ −
SQL_ANSI_SQL_DATETIME_LITERALS ○ −
SQL_CATALOG_LOCATION ○ −
SQL_CATALOG_NAME ○ −
SQL_CATALOG_NAME_SEPARATOR ○ −
SQL_CATALOG_USAGE ○ −
SQL_COLUMN_ALIAS ○ −
SQL_CORRELATION_NAME ○ −
SQL_CREATE_ASSERTION ○ −
SQL_CREATE_CHARACTER_SET ○ −
SQL_CREATE_COLLATION ○ −
SQL_CREATE_DOMAIN ○ −
SQL_CREATE_SCHEMA ○ −
SQL_CREATE_TABLE ○ −
SQL_CREATE_TRANSLATION ○ −
SQL_DDL_INDEX ○ −
SQL_DROP_ASSERTION ○ −
SQL_DROP_CHARACTER_SET ○ −
SQL_DROP_COLLATION ○ −
SQL_DROP_DOMAIN ○ −
SQL_DROP_SCHEMA ○ −
SQL_DROP_TABLE ○ −
SQL_DROP_TRANSLATION ○ −
SQL_DROP_VIEW ○ −
SQL_EXPRESSIONS_IN_ORDERBY ○ −
SQL_GROUP_BY ○ −
SQL_IDENTIFIER_CASE ○ −
SQL_IDENTIFIER_QUOTE_CHAR ○ −
SQL_INDEX_KEYWORDS ○ −
SQL_INSERT_STATEMENT ○ −
SQL_INTEGRITY ○ −
SQL_KEYWORDS ○ −
SQL_LIKE_ESCAPE_CLAUSE ○ −
SQL_NON_NULLABLE_COLUMNS ○ −
SQL_SQL_CONFORMANCE ○ −
SQL_OJ_CAPABILITIES ○ −
SQL_ORDER_BY_COLUMNS_IN_SELECT ○ −
SQL_OUTER_JOINS ○ −
SQL_PROCEDURES ○ −
SQL_QUOTED_IDENTIFIER_CASE ○ −
SQL_SCHEMA_USAGE ○ −
SQL_SPECIAL_CHARACTERS ○ −
SQL_SUBQUERIES ○ −
SQL_UNION ○ −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(e) SQLステートメントの制限に関する情報

識別子の最大長や選択一覧の列の最大数など,SQLステートメントの識別子や句適用される制限に関する情報を返却します。SQLGetInfoで指定できるSQLステートメントの制限に関する情報を次の表に示します。

表14-18 SQLGetInfoで指定できるSQLステートメントの制限に関する情報

オプション値 指定可否 備考
SQL_MAX_BINARY_LITERAL_LEN ○ −
SQL_MAX_CATALOG_NAME_LEN ○ −
SQL_MAX_CHAR_LITERAL_LEN ○ −
SQL_MAX_COLUMN_NAME_LEN ○ −
SQL_MAX_COLUMNS_IN_GROUP_BY ○ −
SQL_MAX_COLUMNS_IN_INDEX ○ −
SQL_MAX_COLUMNS_IN_ORDER_BY ○ −
SQL_MAX_COLUMNS_IN_SELECT ○ −
SQL_MAX_COLUMNS_IN_TABLE ○ −
SQL_MAX_CURSOR_NAME_LEN ○ −
SQL_MAX_IDENTIFIER_LEN ○ −
SQL_MAX_INDEX_SIZE ○ −
SQL_MAX_PROCEDURE_NAME_LEN ○ −
SQL_MAX_ROW_SIZE ○ −
SQL_MAX_ROW_SIZE_INCLUDES_LONG ○ −
SQL_MAX_SCHEMA_NAME_LEN ○ −
SQL_MAX_STATEMENT_LEN ○ −
SQL_MAX_TABLE_NAME_LEN ○ −
SQL_MAX_TABLES_IN_SELECT ○ −
SQL_MAX_USER_NAME_LEN ○ −

(凡例)
○:指定できます。
−:特にありません。

(f) スカラ関数の情報

データソース,又はドライバがサポートしているスカラ関数の情報を返却します。SQLGetInfoで指定できるスカラ関数の情報を次の表に示します。

表14-19 SQLGetInfoで指定できるスカラ関数の情報

オプション値 指定可否 備考
SQL_CONVERT_FUNCTIONS ○ −
SQL_NUMERIC_FUNCTIONS ○ −
SQL_STRING_FUNCTIONS ○ −
SQL_SYSTEM_FUNCTIONS ○ −
SQL_TIMEDATE_ADD_INTERVALS ○ −
SQL_TIMEDATE_DIFF_INTERVALS ○ −
SQL_TIMEDATE_FUNCTIONS ○ −

(凡例)
○:指定できます。
−:特にありません。

(g) 変換先のSQLデータ型の情報

データソースが指定されたSQLデータ型をCONVERTスカラ関数で変換する場合の変換先のSQLデータ型を返却します。SQLGetInfoで指定できる変換先のSQLデータ型の情報を次の表に示します。

表14-20 SQLGetInfoで指定できる変換先のSQLデータ型の情報

オプション値 指定可否 備考
SQL_CONVERT_BIGINT ○ −
SQL_CONVERT_BINARY ○ −
SQL_CONVERT_BIT ○ −
SQL_CONVERT_CHAR ○ −
SQL_CONVERT_DATE ○ −
SQL_CONVERT_DECIMAL ○ −
SQL_CONVERT_DOUBLE ○ −
SQL_CONVERT_FLOAT ○ −
SQL_CONVERT_INTEGER ○ −
SQL_CONVERT_INTERVAL_YEAR_MONTH ○ −
SQL_CONVERT_INTERVAL_DAY_TIME ○ −
SQL_CONVERT_LONGVARBINARY ○ −
SQL_CONVERT_LONGVARCHAR ○ −
SQL_CONVERT_NUMERIC ○ −
SQL_CONVERT_REAL ○ −
SQL_CONVERT_SMALLINT ○ −
SQL_CONVERT_TIME ○ −
SQL_CONVERT_TIMESTAMP ○ −
SQL_CONVERT_TINYINT ○ −
SQL_CONVERT_VARBINARY ○ −
SQL_CONVERT_VARCHAR ○ −

(凡例)
○:指定できます。
−:特にありません。

(h) ODBC3.0以降に追加された情報型

ODBC3.0以降に追加された情報型を次の表に示します。

表14-21 ODBC3.0以降に追加されたSQLGetInfoで指定できる情報型

オプション値 指定可否 備考
SQL_ACTIVE_ENVIRONMENTS ○ −
SQL_AGGREGATE_FUNCTIONS ○ −
SQL_ALTER_DOMAIN ○ −
SQL_ALTER_SCHEMA × −
SQL_ANSI_SQL_DATETIME_LITERALS ○ −
SQL_ASYNC_MODE ○ −
SQL_BATCH_ROW_COUNT ○ −
SQL_BATCH_SUPPORT ○ −
SQL_CATALOG_NAME ○ −
SQL_COLLATION_SEQ ○ −
SQL_CONVERT_INTERVAL_YEAR_MONTH ○ −
SQL_CONVERT_INTERVAL_DAY_TIME ○ −
SQL_CREATE_ASSERTION ○ −
SQL_CREATE_CHARACTER_SET ○ −
SQL_CREATE_COLLATION ○ −
SQL_CREATE_DOMAIN ○ −
SQL_CREATE_SCHEMA ○ −
SQL_CREATE_TABLE ○ −
SQL_CREATE_TRANSLATION ○ −
SQL_CURSOR_SENSITIVITY ○ −
SQL_DDL_INDEX ○ −
SQL_DESCRIBE_PARAMETER ○ −
SQL_DM_VER ○ ドライバマネージャが返却します。
SQL_DRIVER_HDESC ○ −
SQL_DROP_ASSERTION ○ −
SQL_DROP_CHARACTER_SET ○ −
SQL_DROP_COLLATION ○ −
SQL_DROP_DOMAIN ○ −
SQL_DROP_SCHEMA ○ −
SQL_DROP_TABLE ○ −
SQL_DROP_TRANSLATION ○ −
SQL_DROP_VIEW ○ −
SQL_DYNAMIC_CURSOR_ATTRIBUTES1 ○ −
SQL_DYNAMIC_CURSOR_ATTRIBUTES2 ○ −
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 ○ −
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 ○ −
SQL_INFO_SCHEMA_VIEWS ○ −
SQL_INSERT_STATEMENT ○ −
SQL_KEYSET_CURSOR_ATTRIBUTES1 ○ −
SQL_KEYSET_CURSOR_ATTRIBUTES2 ○ −
SQL_MAX_ASYNC_CONCURRENT_STATEMENTS ○ −
SQL_MAX_IDENTIFIER_LEN ○ −
SQL_PARAM_ARRAY_ROW_COUNTS ○ −
SQL_PARAM_ARRAY_SELECTS ○ −
SQL_STATIC_CURSOR_ATTRIBUTES1 ○ −
SQL_STATIC_CURSOR_ATTRIBUTES2 ○ −
SQL_SQL92_DATETIME_FUNCTIONS ○ −
SQL_SQL92_FOREIGN_KEY_DELETE_RULE ○ −
SQL_SQL92_FOREIGN_KEY_UPDATE_RULE ○ −
SQL_SQL92_GRANT ○ −
SQL_SQL92_NUMERIC_VALUE_FUNCTIONS ○ −
SQL_SQL92_PREDICATES ○ −
SQL_SQL92_RELATIONAL_JOIN_OPERATORS ○ −
SQL_SQL92_REVOKE ○ −
SQL_SQL92_ROW_VALUE_CONSTRUCTOR ○ −
SQL_SQL92_STRING_FUNCTIONS ○ −
SQL_SQL92_VALUE_EXPRESSIONS ○ −
SQL_STANDARD_CLI_CONFORMANCE ○ −
SQL_XOPEN_CLI_YEAR ○ −

(凡例)
○:指定できます。
×:指定できません。
−:特にありません。

(10) SQLColAttribute

SQLColAttributeで指定できるODBCディスクリプタ属性を次の表に示します。

表14-22 SQLColAttributeで指定できるODBCディスクリプタ属

属性 指定可否 準拠レベル 備考
SQL_DESC_AUTO_UNIQUE_VALUE ○ Level 2 −
SQL_DESC_BASE_COLUMN_NAME ○ Core ベース列名ではなくSQLのDESCRIBE文で取得できる列名を返します。そのため,SQL_DESC_NAMEと同じ列名を返します。
SQL_DESC_BASE_TABLE_NAME ○ Level 1 −
SQL_DESC_CASE_SENSITIVE ○ Core −
SQL_DESC_CATALOG_NAME ○ Level 2 −
SQL_DESC_CONCISE_TYPE ○ Core −
SQL_DESC_DATA_PTR ○ Core −
SQL_DESC_DATETIME_INTERVAL_CODE ○ Core −
SQL_DESC_DATETIME_INTERVAL_PRECISION ○ Core −
SQL_DESC_SQL_DESC_DISPLAY_SIZE ○ Core −
SQL_DESC_FIXED_PREC_SCALE ○ Core −
SQL_DESC_INDICATOR_PTR ○ Core −
SQL_DESC_LABEL ○ Level 2 −
SQL_DESC_LENGTH ○ Core −
SQL_DESC_LITERAL_PREFIX ○ Core −
SQL_DESC_LITERAL_SUFFIX ○ Core −
SQL_DESC_LOCAL_TYPE_NAME ○ Core −
SQL_DESC_NAME ○ Core −
SQL_DESC_NULLABLE ○ Core −
SQL_DESC_NUM_PREC_RADIX ○ - −
SQL_DESC_OCTET_LENGTH ○ Core −
SQL_DESC_OCTET_LENGTH_PTR ○ Core −
SQL_DESC_PARAMETER_TYPE ○ Core −
SQL_DESC_PRECISION ○ Core −
SQL_DESC_SCALE ○ Core −
SQL_DESC_SCHEMA_NAME ○ Level 1 −
SQL_DESC_SEARCHABLE ○ Core −
SQL_DESC_TABLE_NAME ○ Level 1 −
SQL_DESC_TYPE ○ Core −
SQL_DESC_TYPE_NAME ○ Core −
SQL_DESC_UNNAMED ○ Core −
SQL_DESC_UNSIGNED ○ Core −
SQL_DESC_UPDATABLE ○ Core −

(凡例)
○:指定できます。
−:特にありません。