Nonstop Database, HiRDB Version 9 UAP Development Guide

[Contents][Index][Back][Next]

14.6 Specifiability of attributes in the ODBC functions

Organization of this section
(1) SQLSetConnectAttr
(2) SQLGetConnectAttr
(3) SQLSetDescField
(4) SQLGetDescField
(5) SQLSetEnvAttr
(6) SQLGetEnvAttr
(7) SQLSetStmtAttr
(8) SQLGetStmtAttr
(9) SQLGetInfo
(10) SQLColAttribute

(1) SQLSetConnectAttr

The following table lists the ODBC connection attributes that can be specified in SQLSetConnectAttr.

Table 14-7 ODBC connection attributes that can be specified in SQLSetConnectAttr

Attribute Whether specifiable Compliance level Remarks
SQL_ATTR_ACCESS_MODE Y Core --
SQL_ATTR_ASYNC_ENABLE Y Level 1 --
SQL_ATTR_AUTO_IPD N Level 2 --
SQL_ATTR_AUTO_COMMIT Y Level 1 --
SQL_ATTR_CONNECTION_DEAD N Level 1 --
SQL_ATTR_CONNECTION_TIMEOUT Y Level 2 Only 0 can be specified. If any other value is specified, an error results.
SQL_ATTR_CURRENT_CATALOG N Level 2 --
SQL_ATTR_LOGIN_TIMEOUT Y Level 2 Only 0 can be specified. If any other value is specified, 0 is set.
SQL_ATTR_METADATA_ID N Core --
SQL_ATTR_ODBC_CURSORS N Core --
SQL_ATTR_PACKET_SIZE N Level 2 --
SQL_ATTR_QUIET_MODE N Core --
SQL_ATTR_TRACE Y Core --
SQL_ATTR_TRACEFILE Y Core --
SQL_ATTR_TRANSLATE_LIB N Core --
SQL_ATTR_TRANSLATE_OPTION N Core --
SQL_ATTR_ANSI_APP Y Undefined --
SQL_ATTR_TXN_ISOLATION Y Level 1 --
SQL_ATTR_ENLIST_IN_DTC Y Undefined --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(2) SQLGetConnectAttr

The following table lists the ODBC connection attributes that can be specified in SQLGetConnectAttr.

Table 14-8 ODBC connection attributes that can be specified in SQLGetConnectAttr

Attribute Whether specifiable Compliance level Remarks
SQL_ATTR_ACCESS_MODE Y Core --
SQL_ATTR_ASYNC_ENABLE Y Level 1 --
SQL_ATTR_AUTO_IPD Y Level 2 --
SQL_ATTR_AUTO_COMMIT Y Level 1 --
SQL_ATTR_CONNECTION_DEAD Y Level 1 --
SQL_ATTR_CONNECTION_TIMEOUT N Level 2 --
SQL_ATTR_CURRENT_CATALOG N Level 2 --
SQL_ATTR_LOGIN_TIMEOUT N Level 2 --
SQL_ATTR_METADATA_ID Y Core --
SQL_ATTR_ODBC_CURSORS N Core --
SQL_ATTR_PACKET_SIZE N Level 2 --
SQL_ATTR_QUIET_MODE N Core --
SQL_ATTR_TRACE Y Core Returned by the driver manager
SQL_ATTR_TRACEFILE Y Core Returned by the driver manager
SQL_ATTR_TRANSLATE_LIB N Core --
SQL_ATTR_TRANSLATE_OPTION N Core --
SQL_ATTR_ANSI_APP Y Undefined --
SQL_ATTR_TXN_ISOLATION Y Level 1 --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(3) SQLSetDescField

The following table lists the ODBC descriptor attributes that can be specified in SQLSetDescField.

Table 14-9 ODBC descriptor attributes that can be specified in SQLSetDescField

Attribute Whether specifiable Compliance level Remarks
SQL_DESC_ALLOC_TYPE N Core --
SQL_DESC_ARRAY_SIZE Y Core --
SQL_DESC_ARRAY_STATUS_PTR Y Core --
SQL_DESC_BIND_OFFSET_PTR Y Core --
SQL_DESC_DESC_BIND_TYPE Y Core --
SQL_DESC_COUNT Y Core --
SQL_DESC_ROWS_PROCESSED_PTR Y Core --
SQL_DESC_AUTO_UNIQUE_VALUE N Level 2 --
SQL_DESC_BASE_COLUMN_NAME N Core --
SQL_DESC_BASE_TABLE_NAME N Level 1 --
SQL_DESC_CASE_SENSITIVE N Core --
SQL_DESC_CATALOG_NAME N Level 2 --
SQL_DESC_CONCISE_TYPE Y Core --
SQL_DESC_DATA_PTR Y Core --
SQL_DESC_DATETIME_INTERVAL_CODE Y Core --
SQL_DESC_DATETIME_INTERVAL_PRECISION Y Core --
SQL_DESC_SQL_DESC_DISPLAY_SIZE N Core --
SQL_DESC_FIXED_PREC_SCALE N Core --
SQL_DESC_INDICATOR_PTR Y Core --
SQL_DESC_LABEL N Level 2 --
SQL_DESC_LENGTH Y Core --
SQL_DESC_LITERAL_PREFIX N Core --
SQL_DESC_LITERAL_SUFFIX N Core --
SQL_DESC_LOCAL_TYPE_NAME N Core --
SQL_DESC_NAME Y Core --
SQL_DESC_NULLABLE N Core --
SQL_DESC_NUM_PREC_RADIX Y Undefined --
SQL_DESC_OCTET_LENGTH Y Core --
SQL_DESC_OCTET_LENGTH_PTR Y Core --
SQL_DESC_PARAMETER_TYPE Y Core --
SQL_DESC_PRECISION Y Core --
SQL_DESC_ROWVER N Level 1 --
SQL_DESC_SCALE Y Core --
SQL_DESC_SCHEMA_NAME N Level 1 --
SQL_DESC_SEARCHABLE N Core --
SQL_DESC_TABLE_NAME N Level 1 --
SQL_DESC_TYPE Y Core --
SQL_DESC_TYPE_NAME N Core --
SQL_DESC_UNNAMED Y Core --
SQL_DESC_UNSIGNED N Core --
SQL_DESC_UPDATABLE N Core --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(4) SQLGetDescField

The following table lists the ODBC descriptor attributes that can be specified in SQLGetDescField.

Table 14-10 ODBC descriptor attributes that can be specified in SQLGetDescField

Attribute Whether specifiable Compliance level Remarks
SQL_DESC_ALLOC_TYPE Y Core --
SQL_DESC_ARRAY_SIZE Y Core --
SQL_DESC_ARRAY_STATUS_PTR Y Core --
SQL_DESC_BIND_OFFSET_PTR Y Core --
SQL_DESC_DESC_BIND_TYPE Y Core --
SQL_DESC_COUNT Y Core --
SQL_DESC_ROWS_PROCESSED_PTR Y Core --
SQL_DESC_AUTO_UNIQUE_VALUE Y Level 2 --
SQL_DESC_BASE_COLUMN_NAME Y Core --
SQL_DESC_BASE_TABLE_NAME Y Level 1 --
SQL_DESC_CASE_SENSITIVE Y Core --
SQL_DESC_CATALOG_NAME Y Level 2 --
SQL_DESC_CONCISE_TYPE Y Core --
SQL_DESC_DATA_PTR Y Core --
SQL_DESC_DATETIME_INTERVAL_CODE Y Core --
SQL_DESC_DATETIME_INTERVAL_PRECISION Y Core --
SQL_DESC_SQL_DESC_DISPLAY_SIZE Y Core --
SQL_DESC_FIXED_PREC_SCALE Y Core --
SQL_DESC_INDICATOR_PTR Y Core --
SQL_DESC_LABEL Y Level 2 --
SQL_DESC_LENGTH Y Core --
SQL_DESC_LITERAL_PREFIX Y Core --
SQL_DESC_LITERAL_SUFFIX Y Core --
SQL_DESC_LOCAL_TYPE_NAME Y Core --
SQL_DESC_NAME Y Core --
SQL_DESC_NULLABLE Y Core --
SQL_DESC_NUM_PREC_RADIX Y Undefined --
SQL_DESC_OCTET_LENGTH Y Core --
SQL_DESC_OCTET_LENGTH_PTR Y Core --
SQL_DESC_PARAMETER_TYPE Y Core --
SQL_DESC_PRECISION Y Core --
SQL_DESC_ROWVER N Level 1 --
SQL_DESC_SCALE Y Core --
SQL_DESC_SCHEMA_NAME Y Level 1 --
SQL_DESC_SEARCHABLE Y Core --
SQL_DESC_TABLE_NAME Y Level 1 --
SQL_DESC_TYPE Y Core --
SQL_DESC_TYPE_NAME Y Core --
SQL_DESC_UNNAMED Y Core --
SQL_DESC_UNSIGNED Y Core --
SQL_DESC_UPDATABLE Y Core --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(5) SQLSetEnvAttr

The following table lists the ODBC environment attributes that can be specified in SQLSetEnvAttr.

Table 14-11 ODBC environment attributes that can be specified in SQLSetEnvAttr

Attribute Whether specifiable Compliance level Remarks
SQL_ATTR_CONNECTION_POOLING Y Undefined Not included in the conformance level
SQL_ATTR_CP_MATCH Y Undefined Not included in the conformance level
SQL_ATTR_ODBC_VERSION Y Core --
SQL_ATTR_OUTPUT_NTS Y Undefined Not included in the conformance level

Legend:
Y: Can be specified
--: Not applicable

(6) SQLGetEnvAttr

The following table lists the ODBC environment attributes that can be specified in SQLGetEnvAttr.

Table 14-12 ODBC environment attributes that can be specified in SQLGetEnvAttr

Attribute Whether specifiable Compliance level Remarks
SQL_ATTR_CONNECTION_POOLING Y Undefined Not included in the conformance level
SQL_ATTR_CP_MATCH Y Undefined Not included in the conformance level
SQL_ATTR_ODBC_VERSION Y Core --
SQL_ATTR_OUTPUT_NTS Y Undefined Not included in the conformance level

Legend:
Y: Can be specified
--: Not applicable

(7) SQLSetStmtAttr

The following table lists the ODBC statement attributes that can be specified in SQLSetStmtAttr.

Table 14-13 ODBC statement attributes that can be specified in SQLSetStmtAttr

Attribute Whether specifiable Compliance level Remarks
SQL_ATTR_APP_PARAM_DESC Y Core --
SQL_ATTR_APP_ROW_DESC Y Core --
SQL_ATTR_ASYNC_ENABLE Y Level 1 --
SQL_ATTR_CONCURRENCY Y Level 2 --
SQL_ATTR_CURSOR_SCROLLABLE Y Level 1 --
SQL_ATTR_CURSOR_SENSITIVITY Y Level 2 --
SQL_ATTR_CURSOR_TYPE Y Level 2 Only SQL_CURSOR_FORWARD_ONLY can be specified. If any other value is specified, SQL_CURSOR_FORWARD_ONLY is set.
SQL_ATTR_ENABLE_AUTO_IPD Y Level 2 --
SQL_ATTR_FETCH_BOOKMARK_PTR N Level 2 --
SQL_ATTR_IMP_PARAM_DESC N Core --
SQL_ATTR_IMP_ROW_DESC N Core --
SQL_ATTR_KEYSET_SIZE N Level 2 --
SQL_ATTR_MAX_LENGTH Y Level 1 --
SQL_ATTR_MAX_ROWS Y Level 1 --
SQL_ATTR_METADATA_ID Y Core --
SQL_ATTR_NOSCAN Y Core --
SQL_ATTR_PARAM_BIND_OFFSET_PTR N Core --
SQL_ATTR_PARAM_BIND_TYPE Y Core --
SQL_ATTR_PARAM_OPERATION_PTR N Core --
SQL_ATTR_PARAM_STATUS_PTR Y Core --
SQL_ATTR_PARAMS_PROCESSED_PTR Y Core --
SQL_ATTR_PARAMSET_SIZE Y Core --
SQL_ATTR_QUERY_TIMEOUT N Level 2 --
SQL_ATTR_RETRIEVE_DATA Y Level 1 --
SQL_ATTR_ROW_ARRAY_SIZE Y Core --
SQL_ATTR_ROW_BIND_OFFSET_PTR Y Core --
SQL_ATTR_ROW_BIND_TYPE Y Core --
SQL_ATTR_ROW_NUMBER N Level 1 --
SQL_ATTR_ROW_OPERATION_PTR Y Level 1 --
SQL_ATTR_ROW_STATUS_PTR Y Core --
SQL_ATTR_ROWS_FETCHED_PTR Y Core --
SQL_ATTR_SIMULATE_CURSOR N Level 2 --
SQL_ATTR_USE_BOOKMARKS N Level 2 --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(8) SQLGetStmtAttr

The following table lists the ODBC statement attributes that can be specified in SQLGetStmtAttr.

Table 14-14 ODBC statement attributes that can be specified in SQLGetStmtAttr

Attribute Whether specifiable Compliance level Remarks
SQL_ATTR_APP_PARAM_DESC Y Core --
SQL_ATTR_APP_ROW_DESC Y Core --
SQL_ATTR_ASYNC_ENABLE Y Level 1 --
SQL_ATTR_CONCURRENCY Y Level 2 --
SQL_ATTR_CURSOR_SCROLLABLE Y Level 1 --
SQL_ATTR_CURSOR_SENSITIVITY Y Level 2 --
SQL_ATTR_CURSOR_TYPE Y Level 2 --
SQL_ATTR_ENABLE_AUTO_IPD Y Level 2 --
SQL_ATTR_FETCH_BOOKMARK_PTR N Level 2 --
SQL_ATTR_IMP_PARAM_DESC Y Core --
SQL_ATTR_IMP_ROW_DESC Y Core --
SQL_ATTR_KEYSET_SIZE N Level 2 --
SQL_ATTR_MAX_LENGTH Y Level 1 --
SQL_ATTR_MAX_ROWS Y Level 1 --
SQL_ATTR_METADATA_ID Y Core --
SQL_ATTR_NOSCAN Y Core --
SQL_ATTR_PARAM_BIND_OFFSET_PTR N Core --
SQL_ATTR_PARAM_BIND_TYPE N Core --
SQL_ATTR_PARAM_OPERATION_PTR Y Core --
SQL_ATTR_PARAM_STATUS_PTR Y Core --
SQL_ATTR_PARAMS_PROCESSED_PTR Y Core --
SQL_ATTR_PARAMSET_SIZE Y Core --
SQL_ATTR_QUERY_TIMEOUT N Level 2 --
SQL_ATTR_RETRIEVE_DATA Y Level 1 --
SQL_ATTR_ROW_ARRAY_SIZE Y Core --
SQL_ATTR_ROW_BIND_OFFSET_PTR N Core --
SQL_ATTR_ROW_BIND_TYPE N Core --
SQL_ATTR_ROW_NUMBER N Level 1 --
SQL_ATTR_ROW_OPERATION_PTR Y Level 1 --
SQL_ATTR_ROW_STATUS_PTR Y Core --
SQL_ATTR_ROWS_FETCHED_PTR Y Core --
SQL_ATTR_SIMULATE_CURSOR N Level 2 --
SQL_ATTR_USE_BOOKMARKS N Level 2 --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(9) SQLGetInfo

This subsection shows the information types that can be specified in SQLGetInfo.

(a) Driver information

The SQLGetInfo function returns information about the ODBC driver, such as the number of active statements, data source name, and interface standard conformance level. The following table lists the driver information items that can be specified in SQLGetInfo.

Table 14-15 Driver information items that can be specified in SQLGetInfo

Option value Whether specifiable Remarks
SQL_ACTIVE_ENVIRONMENTS Y --
SQL_ASYNC_MODE Y --
SQL_BATCH_ROW_COUNT Y --
SQL_BATCH_SUPPORT Y --
SQL_DATA_SOURCE_NAME Y --
SQL_DRIVER_HDBC Y --
SQL_DRIVER_HDESC Y Returned by the driver manager
SQL_DRIVER_HENV Y --
SQL_DRIVER_HLIB Y Returned by the driver manager
SQL_DRIVER_HSTMT Y --
SQL_DRIVER_NAME Y --
SQL_DRIVER_ODBC_VER Y --
SQL_DRIVER_VER Y --
SQL_DYNAMIC_CURSOR_ATTRIBUTES1 Y --
SQL_DYNAMIC_CURSOR_ATTRIBUTES2 Y --
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 Y --
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 Y --
SQL_FILE_USAGE Y --
SQL_GETDATA_EXTENSIONS Y --
SQL_INFO_SCHEMA_VIEWS Y --
SQL_KEYSET_CURSOR_ATTRIBUTES1 Y --
SQL_KEYSET_CURSOR_ATTRIBUTES2 Y --
SQL_MAX_ASYNC_CONCURRENT_STATEMENTS Y --
SQL_MAX_CONCURRENT_ACTIVITIES Y --
SQL_MAX_DRIVER_CONNECTIONS Y --
SQL_ODBC_INTERFACE_CONFORMANCE Y --
SQL_ODBC_VER Y --
SQL_PARAM_ARRAY_ROW_COUNTS Y --
SQL_PARAM_ARRAY_SELECTS Y --
SQL_ROW_UPDATES Y --
SQL_SEARCH_PATTERN_ESCAPE Y --
SQL_SERVER_NAME Y --
SQL_STATIC_CURSOR_ATTRIBUTES1 Y --
SQL_STATIC_CURSOR_ATTRIBUTES2 Y --

Legend:
Y: Can be specified
--: Not applicable

(b) Information about DBMS product

The SQLGetInfo function returns information about the DBMS product, such as the DBMS product name and version. The following table lists the DBMS product information items that can be specified in SQLGetInfo.

Table 14-16 DBMS product information items that can be specified in SQLGetInfo

Option value Whether specifiable Remarks
SQL_DATABASE_NAME Y --
SQL_DBMS_NAME Y --
SQL_DBMS_VER Y --

Legend:
Y: Can be specified
--: Not applicable

(c) Data source information

The SQLGetInfo function returns information about the data source, such as the cursor attributes and transaction functions. The following table lists the data source information items that can be specified in SQLGetInfo.

Table 14-17 Data source information items that can be specified in SQLGetInfo

Option value Whether specifiable Remarks
SQL_ACCESSIBLE_PROCEDURES Y --
SQL_ACCESSIBLE_TABLES Y --
SQL_BOOKMARK_PERSISTENCE Y --
SQL_CATALOG_TERM Y --
SQL_COLLATION_SEQ Y --
SQL_CONCAT_NULL_BEHAVIOR Y --
SQL_CURSOR_COMMIT_BEHAVIOR Y --
SQL_CURSOR_ROLLBACK_BEHAVIOR Y --
SQL_CURSOR_SENSITIVITY Y --
SQL_DATA_SOURCE_READ_ONLY Y --
SQL_DEFAULT_TXN_ISOLATION Y --
SQL_DESCRIBE_PARAMETER Y --
SQL_MULT_RESULT_SETS Y --
SQL_MULTIPLE_ACTIVE_TXN Y --
SQL_NEED_LONG_DATA_LEN Y --
SQL_NULL_COLLATION Y --
SQL_PROCEDURE_TERM Y --
SQL_SCHEMA_TERM Y --
SQL_SCROLL_OPTIONS Y --
SQL_TABLE_TERM Y --
SQL_TXN_CAPABLE Y --
SQL_TXN_ISOLATION_OPTION Y --
SQL_USER_NAME Y --

Legend:
Y: Can be specified
--: Not applicable

(d) SQL statement information

The SQLGetInfo function returns information about the SQL statements that are supported by the data source. The following table lists the SQL statement information items that can be specified in SQLGetInfo.

Table 14-18 SQL statement information items that can be specified in SQLGetInfo

Option value Whether specifiable Remarks
SQL_AGGREGATE_FUNCTIONS Y --
SQL_ALTER_DOMAIN Y --
SQL_ALTER_SCHEMA N --
SQL_ALTER_TABLE Y --
SQL_ANSI_SQL_DATETIME_LITERALS Y --
SQL_CATALOG_LOCATION Y --
SQL_CATALOG_NAME Y --
SQL_CATALOG_NAME_SEPARATOR Y --
SQL_CATALOG_USAGE Y --
SQL_COLUMN_ALIAS Y --
SQL_CORRELATION_NAME Y --
SQL_CREATE_ASSERTION Y --
SQL_CREATE_CHARACTER_SET Y --
SQL_CREATE_COLLATION Y --
SQL_CREATE_DOMAIN Y --
SQL_CREATE_SCHEMA Y --
SQL_CREATE_TABLE Y --
SQL_CREATE_TRANSLATION Y --
SQL_DDL_INDEX Y --
SQL_DROP_ASSERTION Y --
SQL_DROP_CHARACTER_SET Y --
SQL_DROP_COLLATION Y --
SQL_DROP_DOMAIN Y --
SQL_DROP_SCHEMA Y --
SQL_DROP_TABLE Y --
SQL_DROP_TRANSLATION Y --
SQL_DROP_VIEW Y --
SQL_EXPRESSIONS_IN_ORDERBY Y --
SQL_GROUP_BY Y --
SQL_IDENTIFIER_CASE Y --
SQL_IDENTIFIER_QUOTE_CHAR Y --
SQL_INDEX_KEYWORDS Y --
SQL_INSERT_STATEMENT Y --
SQL_INTEGRITY Y --
SQL_KEYWORDS Y --
SQL_LIKE_ESCAPE_CLAUSE Y --
SQL_NON_NULLABLE_COLUMNS Y --
SQL_SQL_CONFORMANCE Y --
SQL_OJ_CAPABILITIES Y --
SQL_ORDER_BY_COLUMNS_IN_SELECT Y --
SQL_OUTER_JOINS Y --
SQL_PROCEDURES Y --
SQL_QUOTED_IDENTIFIER_CASE Y --
SQL_SCHEMA_USAGE Y --
SQL_SPECIAL_CHARACTERS Y --
SQL_SUBQUERIES Y --
SQL_UNION Y --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(e) Information about limitations to SQL statements

The SQLGetInfo function returns information about the limitations to SQL statement identifiers and clauses, such as the maximum length of an identifier and the maximum number of columns in a list. The following table lists information items related to SQL statement limitations that can be specified in SQLGetInfo.

Table 14-19 Information items related to SQL statement limitations that can be specified in SQLGetInfo

Option value Whether specifiable Remarks
SQL_MAX_BINARY_LITERAL_LEN Y --
SQL_MAX_CATALOG_NAME_LEN Y --
SQL_MAX_CHAR_LITERAL_LEN Y --
SQL_MAX_COLUMN_NAME_LEN Y --
SQL_MAX_COLUMNS_IN_GROUP_BY Y --
SQL_MAX_COLUMNS_IN_INDEX Y --
SQL_MAX_COLUMNS_IN_ORDER_BY Y --
SQL_MAX_COLUMNS_IN_SELECT Y --
SQL_MAX_COLUMNS_IN_TABLE Y --
SQL_MAX_CURSOR_NAME_LEN Y --
SQL_MAX_IDENTIFIER_LEN Y --
SQL_MAX_INDEX_SIZE Y --
SQL_MAX_PROCEDURE_NAME_LEN Y --
SQL_MAX_ROW_SIZE Y --
SQL_MAX_ROW_SIZE_INCLUDES_LONG Y --
SQL_MAX_SCHEMA_NAME_LEN Y --
SQL_MAX_STATEMENT_LEN Y --
SQL_MAX_TABLE_NAME_LEN Y --
SQL_MAX_TABLES_IN_SELECT Y --
SQL_MAX_USER_NAME_LEN Y --

Legend:
Y: Can be specified
--: Not applicable

(f) Scalar function information

The SQLGetInfo function returns information about the scalar functions supported by the data source or driver. The following table lists the scalar function information items that can be specified in SQLGetInfo.

Table 14-20 Scalar function information items that can be specified in SQLGetInfo

Option value Whether specifiable Remarks
SQL_CONVERT_FUNCTIONS Y --
SQL_NUMERIC_FUNCTIONS Y --
SQL_STRING_FUNCTIONS Y --
SQL_SYSTEM_FUNCTIONS Y --
SQL_TIMEDATE_ADD_INTERVALS Y --
SQL_TIMEDATE_DIFF_INTERVALS Y --
SQL_TIMEDATE_FUNCTIONS Y --

Legend:
Y: Can be specified
--: Not applicable

(g) Information about the target SQL data type

The SQLGetInfo function returns information about the target SQL data type when an SQL data type for which a data source is specified is converted by the CONVERT scalar function. The following table lists information items related to the target SQL data type that can be specified in SQLGetInfo.

Table 14-21 Information items related to the target SQL data type that can be specified in SQLGetInfo

Option value Whether specifiable Remarks
SQL_CONVERT_BIGINT Y --
SQL_CONVERT_BINARY Y --
SQL_CONVERT_BIT Y --
SQL_CONVERT_CHAR Y --
SQL_CONVERT_DATE Y --
SQL_CONVERT_DECIMAL Y --
SQL_CONVERT_DOUBLE Y --
SQL_CONVERT_FLOAT Y --
SQL_CONVERT_INTEGER Y --
SQL_CONVERT_INTERVAL_YEAR_MONTH Y --
SQL_CONVERT_INTERVAL_DAY_TIME Y --
SQL_CONVERT_LONGVARBINARY Y --
SQL_CONVERT_LONGVARCHAR Y --
SQL_CONVERT_NUMERIC Y --
SQL_CONVERT_REAL Y --
SQL_CONVERT_SMALLINT Y --
SQL_CONVERT_TIME Y --
SQL_CONVERT_TIMESTAMP Y --
SQL_CONVERT_TINYINT Y --
SQL_CONVERT_VARBINARY Y --
SQL_CONVERT_VARCHAR Y --

Legend:
Y: Can be specified
--: Not applicable

(h) Information types added for ODBC 3.0 or later

The following table lists the information types that have been added for ODBC 3.0 or later.

Table 14-22 Information types added for ODBC 3.0 or later

Option value Whether specifiable Remarks
SQL_ACTIVE_ENVIRONMENTS Y --
SQL_AGGREGATE_FUNCTIONS Y --
SQL_ALTER_DOMAIN Y --
SQL_ALTER_SCHEMA N --
SQL_ANSI_SQL_DATETIME_LITERALS Y --
SQL_ASYNC_MODE Y --
SQL_BATCH_ROW_COUNT Y --
SQL_BATCH_SUPPORT Y --
SQL_CATALOG_NAME Y --
SQL_COLLATION_SEQ Y --
SQL_CONVERT_INTERVAL_YEAR_MONTH Y --
SQL_CONVERT_INTERVAL_DAY_TIME Y --
SQL_CREATE_ASSERTION Y --
SQL_CREATE_CHARACTER_SET Y --
SQL_CREATE_COLLATION Y --
SQL_CREATE_DOMAIN Y --
SQL_CREATE_SCHEMA Y --
SQL_CREATE_TABLE Y --
SQL_CREATE_TRANSLATION Y --
SQL_CURSOR_SENSITIVITY Y --
SQL_DDL_INDEX Y --
SQL_DESCRIBE_PARAMETER Y --
SQL_DM_VER Y Returned by the driver manager
SQL_DRIVER_HDESC Y --
SQL_DROP_ASSERTION Y --
SQL_DROP_CHARACTER_SET Y --
SQL_DROP_COLLATION Y --
SQL_DROP_DOMAIN Y --
SQL_DROP_SCHEMA Y --
SQL_DROP_TABLE Y --
SQL_DROP_TRANSLATION Y --
SQL_DROP_VIEW Y --
SQL_DYNAMIC_CURSOR_ATTRIBUTES1 Y --
SQL_DYNAMIC_CURSOR_ATTRIBUTES2 Y --
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 Y --
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 Y --
SQL_INFO_SCHEMA_VIEWS Y --
SQL_INSERT_STATEMENT Y --
SQL_KEYSET_CURSOR_ATTRIBUTES1 Y --
SQL_KEYSET_CURSOR_ATTRIBUTES2 Y --
SQL_MAX_ASYNC_CONCURRENT_STATEMENTS Y --
SQL_MAX_IDENTIFIER_LEN Y --
SQL_PARAM_ARRAY_ROW_COUNTS Y --
SQL_PARAM_ARRAY_SELECTS Y --
SQL_STATIC_CURSOR_ATTRIBUTES1 Y --
SQL_STATIC_CURSOR_ATTRIBUTES2 Y --
SQL_SQL92_DATETIME_FUNCTIONS Y --
SQL_SQL92_FOREIGN_KEY_DELETE_RULE Y --
SQL_SQL92_FOREIGN_KEY_UPDATE_RULE Y --
SQL_SQL92_GRANT Y --
SQL_SQL92_NUMERIC_VALUE_FUNCTIONS Y --
SQL_SQL92_PREDICATES Y --
SQL_SQL92_RELATIONAL_JOIN_OPERATORS Y --
SQL_SQL92_REVOKE Y --
SQL_SQL92_ROW_VALUE_CONSTRUCTOR Y --
SQL_SQL92_STRING_FUNCTIONS Y --
SQL_SQL92_VALUE_EXPRESSIONS Y --
SQL_STANDARD_CLI_CONFORMANCE Y --
SQL_XOPEN_CLI_YEAR Y --

Legend:
Y: Can be specified
N: Cannot be specified
--: Not applicable

(10) SQLColAttribute

The following table lists the ODBC descriptor attributes that can be specified in SQLColAttribute.

Table 14-23 ODBC descriptor attributes that can be specified in SQLColAttribute

Attribute Whether specifiable Compliance level Remarks
SQL_DESC_AUTO_UNIQUE_VALUE Y Level 2 --
SQL_DESC_BASE_COLUMN_NAME Y Core The column name that can be acquired by the DESCRIBE SQL statement, not the base column name, is returned. Therefore, the same column name as in SQL_DESC_NAME is returned.
SQL_DESC_BASE_TABLE_NAME Y Level 1 --
SQL_DESC_CASE_SENSITIVE Y Core --
SQL_DESC_CATALOG_NAME Y Level 2 --
SQL_DESC_CONCISE_TYPE Y Core --
SQL_DESC_DATA_PTR Y Core --
SQL_DESC_DATETIME_INTERVAL_CODE Y Core --
SQL_DESC_DATETIME_INTERVAL_PRECISION Y Core --
SQL_DESC_SQL_DESC_DISPLAY_SIZE Y Core --
SQL_DESC_FIXED_PREC_SCALE Y Core --
SQL_DESC_INDICATOR_PTR Y Core --
SQL_DESC_LABEL Y Level 2 --
SQL_DESC_LENGTH Y Core --
SQL_DESC_LITERAL_PREFIX Y Core --
SQL_DESC_LITERAL_SUFFIX Y Core --
SQL_DESC_LOCAL_TYPE_NAME Y Core --
SQL_DESC_NAME Y Core --
SQL_DESC_NULLABLE Y Core --
SQL_DESC_NUM_PREC_RADIX Y -- --
SQL_DESC_OCTET_LENGTH Y Core --
SQL_DESC_OCTET_LENGTH_PTR Y Core --
SQL_DESC_PARAMETER_TYPE Y Core --
SQL_DESC_PRECISION Y Core --
SQL_DESC_SCALE Y Core --
SQL_DESC_SCHEMA_NAME Y Level 1 --
SQL_DESC_SEARCHABLE Y Core --
SQL_DESC_TABLE_NAME Y Level 1 --
SQL_DESC_TYPE Y Core --
SQL_DESC_TYPE_NAME Y Core --
SQL_DESC_UNNAMED Y Core --
SQL_DESC_UNSIGNED Y Core --
SQL_DESC_UPDATABLE Y Core --

Legend:
Y: Can be specified
--: Not applicable