Excel 的 SQLGetInfo 返回值

下表列出了 fInfoType 参数的 C 语言 #defines,以及 SQLGetInfo 返回的相应值。 可以通过将列出的 C 语言 #defines 传递到 fInfoType 参数中的 SQLGetInfo 来检索此信息。 有关 SQLGetInfo 返回的值的详细信息,请参阅 ODBC 程序员参考

注意

其中 SQLGetInfo 返回 32 位掩码,垂直条 (|) 表示按位 OR。

InfoType 返回值
SQL_ACCESSIBLE_PROCEDURES "N"
SQL_ACCESSIBLE_TABLES "Y"
SQL_ACTIVE_ENVIRONMENTS 0
SQL_AGGREGATE_FUNCTIONS All set
SQL_ALTER_DOMAIN 0
SQL_ALTER_TABLE 0
SQL_ASYNC_MODE 0
SQL_BATCH_ROW_COUNT 0
SQL_BATCH_SUPPORT 0
SQL_BOOKMARK_PERSISTENCE 多个值
SQL_CATALOG_LOCATION SQL_QL_START
SQL_CATALOG_NAME "Y"
SQL_CATALOG_NAME_SEPARATOR 多个值
SQL_CATALOG_TERM 多个值
SQL_CATALOG_USAGE 多个值
SQL_COLLATION_SEQ ""
SQL_COLUMN_ALIAS "Y"
SQL_CONCAT_NULL_BEHAVIOR SQL_CB_NON_NULL
SQL_CONVERT_BIGINT 0
SQL_CONVERT_BINARY 多个值
SQL_CONVERT_BIT 0
SQL_CONVERT_CHAR 多个值
SQL_CONVERT_DATE 多个值
SQL_CONVERT_DECIMAL 0
SQL_CONVERT_DOUBLE 多个值
SQL_CONVERT_FLOAT 多个值
SQL_CONVERT_FUNCTIONS SQL_FN_CVT_CONVERT
SQL_CONVERT_INTEGER 多个值
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 多个值
SQL_CORRELATION_NAME SQL_CN_ANY
SQL_CREATE_ASSERTION 0
SQL_CREATE_CHARACTER_SET 0
SQL_CREATE_COLLATION 0
SQL_CREATE_DOMAIN 0
SQL_CREATE_SCHEMA 0
SQL_CREATE_TABLE SQL_CT_CREATE_TABLE
SQL_CREATE_TRANSLATION 0
SQL_CREATE_VIEW 0
SQL_CURSOR_COMMIT_BEHAVIOR SQL_CB_CLOSE
SQL_CURSOR_ROLLBACK_BEHAVIOR SQL_CB_CLOSE
SQL_CURSOR_SENSITIVITY SQL_UNSPECIFIED
SQL_DATA_SOURCE_NAME Odbc.ini 中的 DSN;如果在 Odbc.ini 中使用 DRIVER 关键字 (keyword) ,则为“”
SQL_DATA_SOURCE_READ_ONLY "Y"
SQL_DATABASE_NAME 当前数据库目录
SQL_DATETIME_LITERALS 0
SQL_DBMS_NAME “EXCEL”
SQL_DBMS_VER 多个值
SQL_DDL_INDEX 0
SQL_DEFAULT_TXN_ISOLATION 0
SQL_DESCRIBE_PARAMETER 0
SQL_DRIVER_HDBC 由驱动程序管理器处理。
SQL_DRIVER_HENV 由驱动程序管理器处理。
SQL_DRIVER_HLIB 由驱动程序管理器处理。
SQL_DRIVER_HSTMT 由驱动程序管理器处理。
SQL_DRIVER_NAME “OdbcJt32.dll”
SQL_DRIVER_ODBC_VER "3.51.0000"
SQL_DRIVER_VER “4.00.nnnn” (nnnn 指定生成日期)
SQL_DROP_ASSERTION 0
SQL_DROP_CHARACTER_SET 0
SQL_DROP_COLLATION 0
SQL_DROP_DOMAIN 0
SQL_DROP_SCHEMA 0
SQL_DROP_TABLE SQL_DT_DROP_TABLE
SQL_DROP_TRANSLATION 0
SQL_DROP_VIEW SQL_DV_DROP_VIEW
SQL_EXPRESSIONS_IN_ORDERBY "Y"
SQL_FILE_USAGE 多个值
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 SQL_CA1_NEXT
SQL_GETDATA_EXTENSIONS 多个值
SQL_GROUP_BY SQL_GB_GROUP_BY_CONTAINS_SELECT
SQL_IDENTIFIER_CASE SQL_IC_MIXED
SQL_IDENTIFIER_QUOTE_CHAR “'” (反引号)
SQL_KEYWORDS 多个值
SQL_LIKE_ESCAPE_CLAUSE "N"
SQL_MAX_BINARY_LITERAL_LEN 255
SQL_MAX_CATALOG_NAME_LEN 66
SQL_MAX_CHAR_LITERAL_LEN 多个值
SQL_MAX_COLUMN_NAME_LEN 多个值
SQL_MAX_COLUMNS_IN_GROUP_BY 10
SQL_MAX_COLUMNS_IN_INDEX 0
SQL_MAX_COLUMNS_IN_ORDER_BY 10
SQL_MAX_COLUMNS_IN_SELECT 255
SQL_MAX_COLUMNS_IN_TABLE 255

使用 Microsoft Excel 驱动程序时,CREATE TABLE 语句可能允许 256 列,但 255 列的限制仍然有效,并且插入列 256 将失败。
SQL_MAX_CONCURRENT_ACTIVITIES 0
SQL_MAX_CURSOR_NAME_LEN 64
SQL_MAX_DRIVER_CONNECTIONS 64
SQL_MAX_INDEX_SIZE 0
SQL_MAX_PROCEDURE_NAME_LEN 0
SQL_MAX_ROW_SIZE 65535
SQL_MAX_ROW_SIZE_INCLUDES_LONG "Y"
SQL_MAX_SCHEMA_NAME_LEN 0
SQL_MAX_STATEMENT_LEN 65000
SQL_MAX_TABLE_NAME_LEN 多个值
SQL_MAX_TABLES_IN_SELECT 16
SQL_MAX_USER_NAME_LEN 0
SQL_MULT_RESULT_SETS "N"
SQL_MULTIPLE_ACTIVE_TXN "Y"
SQL_NEED_LONG_DATA_LEN "N"
SQL_NON_NULLABLE_COLUMNS SQL_NNC_NON_NULL
SQL_NULL_COLLATION SQL_NC_LOW
SQL_NUMERIC_FUNCTIONS 多个值
SQL_ODBC_SAG_CLI_符合性 SQL_OSCC_COMPLIANT
SQL_ODBC_SQL_INTEGRITY "N"
SQL_ODBC_VER 从驱动程序管理器
SQL_OJ_CAPABILITIES 多个值
SQL_ORDER_BY_COLUMNS_IN_SELECT "N"
SQL_OUTER_JOINS "Y"
SQL_PROCEDURE_TERM ""
SQL_PROCEDURES "N"
SQL_QUOTED_IDENTIFIER_CASE SQL_IC_MIXED
SQL_ROW_UPDATES "N"
SQL_SCHEMA_TERM ""
SQL_SCHEMA_USAGE 0
SQL_SCROLL_OPTIONS 多个值
SQL_SEARCH_PATTERN_ESCAPE "\"
SQL_SERVER_NAME “EXCEL”
SQL_SPECIAL_CHARACTERS “~'@#$%^&*_-+=\}{”;:?/><,.!'[]|"
SQL_STRING_FUNCTIONS 多个值
SQL_SUBQUERIES 多个值
SQL_SYSTEM_FUNCTIONS 0
SQL_TABLE_TERM “TABLE”
SQL_TIMEDATE_ADD_INTERVALS 0
SQL_TIMEDATE_DIFF_INTERVALS 0
SQL_TIMEDATE_FUNCTIONS 多个值
SQL_TXN_CAPABLE SQL_TC_NONE
SQL_TXN_ISOLATION_OPTION 0
SQL_UNION 多个值
SQL_USER_NAME ""