📄 sqlext.h
字号:
/* SQL_API_ALL_FUNCTIONS returns an array *//* of 'booleans' representing whether a *//* function is implemented by the driver. *//* *//* CAUTION: Only functions defined in ODBC *//* version 2.0 and earlier are returned, the *//* new high-range function numbers defined by *//* X/Open break this scheme. See the new *//* method -- SQL_API_ODBC3_ALL_FUNCTIONS *//*--------------------------------------------*/#define SQL_API_ALL_FUNCTIONS 0 /* See CAUTION above *//*----------------------------------------------*//* 2.X drivers export a dummy function with *//* ordinal number SQL_API_LOADBYORDINAL to speed*//* loading under the windows operating system. *//* *//* CAUTION: Loading by ordinal is not supported *//* for 3.0 and above drivers. *//*----------------------------------------------*/#define SQL_API_LOADBYORDINAL 199 /* See CAUTION above *//*----------------------------------------------*//* SQL_API_ODBC3_ALL_FUNCTIONS *//* This returns a bitmap, which allows us to *//* handle the higher-valued function numbers. *//* Use SQL_FUNC_EXISTS(bitmap,function_number) *//* to determine if the function exists. *//*----------------------------------------------*/#if (ODBCVER >= 0x0300)#define SQL_API_ODBC3_ALL_FUNCTIONS 999#define SQL_API_ODBC3_ALL_FUNCTIONS_SIZE 250 /* array of 250 words */#define SQL_FUNC_EXISTS(pfExists, uwAPI) ((*(((UWORD*) (pfExists)) + ((uwAPI) >> 4)) & (1 << ((uwAPI) & 0x000F)) ) ? SQL_TRUE : SQL_FALSE )#endif /* ODBCVER >= 0x0300 *//************************************************//* Extended definitions for SQLGetInfo *//************************************************//*---------------------------------*//* Values in ODBC 2.0 that are not *//* in the X/Open spec *//*---------------------------------*/#define SQL_INFO_FIRST 0#define SQL_ACTIVE_CONNECTIONS 0 /* MAX_DRIVER_CONNECTIONS */#define SQL_ACTIVE_STATEMENTS 1 /* MAX_CONCURRENT_ACTIVITIES */#define SQL_DRIVER_HDBC 3#define SQL_DRIVER_HENV 4#define SQL_DRIVER_HSTMT 5#define SQL_DRIVER_NAME 6#define SQL_DRIVER_VER 7#define SQL_ODBC_API_CONFORMANCE 9#define SQL_ODBC_VER 10#define SQL_ROW_UPDATES 11#define SQL_ODBC_SAG_CLI_CONFORMANCE 12#define SQL_ODBC_SQL_CONFORMANCE 15#define SQL_PROCEDURES 21#define SQL_CONCAT_NULL_BEHAVIOR 22#define SQL_CURSOR_ROLLBACK_BEHAVIOR 24#define SQL_EXPRESSIONS_IN_ORDERBY 27#define SQL_MAX_OWNER_NAME_LEN 32 /* MAX_SCHEMA_NAME_LEN */#define SQL_MAX_PROCEDURE_NAME_LEN 33#define SQL_MAX_QUALIFIER_NAME_LEN 34 /* MAX_CATALOG_NAME_LEN */#define SQL_MULT_RESULT_SETS 36#define SQL_MULTIPLE_ACTIVE_TXN 37#define SQL_OUTER_JOINS 38#define SQL_OWNER_TERM 39#define SQL_PROCEDURE_TERM 40#define SQL_QUALIFIER_NAME_SEPARATOR 41#define SQL_QUALIFIER_TERM 42#define SQL_SCROLL_OPTIONS 44#define SQL_TABLE_TERM 45#define SQL_CONVERT_FUNCTIONS 48#define SQL_NUMERIC_FUNCTIONS 49#define SQL_STRING_FUNCTIONS 50#define SQL_SYSTEM_FUNCTIONS 51#define SQL_TIMEDATE_FUNCTIONS 52#define SQL_CONVERT_BIGINT 53#define SQL_CONVERT_BINARY 54#define SQL_CONVERT_BIT 55#define SQL_CONVERT_CHAR 56#define SQL_CONVERT_DATE 57#define SQL_CONVERT_DECIMAL 58#define SQL_CONVERT_DOUBLE 59#define SQL_CONVERT_FLOAT 60#define SQL_CONVERT_INTEGER 61#define SQL_CONVERT_LONGVARCHAR 62#define SQL_CONVERT_NUMERIC 63#define SQL_CONVERT_REAL 64#define SQL_CONVERT_SMALLINT 65#define SQL_CONVERT_TIME 66#define SQL_CONVERT_TIMESTAMP 67#define SQL_CONVERT_TINYINT 68#define SQL_CONVERT_VARBINARY 69#define SQL_CONVERT_VARCHAR 70#define SQL_CONVERT_LONGVARBINARY 71#define SQL_ODBC_SQL_OPT_IEF 73 /* SQL_INTEGRITY */#define SQL_CORRELATION_NAME 74#define SQL_NON_NULLABLE_COLUMNS 75#define SQL_DRIVER_HLIB 76#define SQL_DRIVER_ODBC_VER 77#define SQL_LOCK_TYPES 78#define SQL_POS_OPERATIONS 79#define SQL_POSITIONED_STATEMENTS 80#define SQL_BOOKMARK_PERSISTENCE 82#define SQL_STATIC_SENSITIVITY 83#define SQL_FILE_USAGE 84#define SQL_COLUMN_ALIAS 87#define SQL_GROUP_BY 88#define SQL_KEYWORDS 89#define SQL_OWNER_USAGE 91#define SQL_QUALIFIER_USAGE 92#define SQL_QUOTED_IDENTIFIER_CASE 93#define SQL_SUBQUERIES 95#define SQL_UNION 96#define SQL_MAX_ROW_SIZE_INCLUDES_LONG 103#define SQL_MAX_CHAR_LITERAL_LEN 108#define SQL_TIMEDATE_ADD_INTERVALS 109#define SQL_TIMEDATE_DIFF_INTERVALS 110#define SQL_NEED_LONG_DATA_LEN 111#define SQL_MAX_BINARY_LITERAL_LEN 112#define SQL_LIKE_ESCAPE_CLAUSE 113#define SQL_QUALIFIER_LOCATION 114#if (ODBCVER >= 0x0201 && ODBCVER < 0x0300)#ifndef SQL_OJ_CAPABILITIES#define SQL_OJ_CAPABILITIES 65003 /* Temp value until ODBC 3.0 */#endif#endif /* ODBCVER >= 0x0201 && ODBCVER < 0x0300 *//*----------------------------------------------*//* SQL_INFO_LAST and SQL_INFO_DRIVER_START are *//* not useful anymore, because X/Open has *//* values in the 10000 range. You *//* must contact X/Open directly to get a range *//* of numbers for driver-specific values. *//*----------------------------------------------*/#if (ODBCVER < 0x0300)#define SQL_INFO_LAST SQL_QUALIFIER_LOCATION#define SQL_INFO_DRIVER_START 1000#endif /* ODBCVER < 0x0300 *//*-----------------------------------------------*//* ODBC 3.0 SQLGetInfo values that are not part *//* of the X/Open standard at this time. X/Open *//* standard values are in sql.h. *//*-----------------------------------------------*/#if (ODBCVER >= 0x0300)#define SQL_ACTIVE_ENVIRONMENTS 116#define SQL_ALTER_DOMAIN 117#define SQL_SQL_CONFORMANCE 118#define SQL_DATETIME_LITERALS 119#define SQL_ASYNC_MODE 10021 /* new X/Open spec */#define SQL_BATCH_ROW_COUNT 120#define SQL_BATCH_SUPPORT 121#define SQL_CATALOG_LOCATION SQL_QUALIFIER_LOCATION#define SQL_CATALOG_NAME_SEPARATOR SQL_QUALIFIER_NAME_SEPARATOR#define SQL_CATALOG_TERM SQL_QUALIFIER_TERM#define SQL_CATALOG_USAGE SQL_QUALIFIER_USAGE#define SQL_CONVERT_WCHAR 122#define SQL_CONVERT_INTERVAL_DAY_TIME 123#define SQL_CONVERT_INTERVAL_YEAR_MONTH 124#define SQL_CONVERT_WLONGVARCHAR 125#define SQL_CONVERT_WVARCHAR 126#define SQL_CREATE_ASSERTION 127#define SQL_CREATE_CHARACTER_SET 128#define SQL_CREATE_COLLATION 129#define SQL_CREATE_DOMAIN 130#define SQL_CREATE_SCHEMA 131#define SQL_CREATE_TABLE 132#define SQL_CREATE_TRANSLATION 133#define SQL_CREATE_VIEW 134#define SQL_DRIVER_HDESC 135#define SQL_DROP_ASSERTION 136#define SQL_DROP_CHARACTER_SET 137#define SQL_DROP_COLLATION 138#define SQL_DROP_DOMAIN 139#define SQL_DROP_SCHEMA 140#define SQL_DROP_TABLE 141#define SQL_DROP_TRANSLATION 142#define SQL_DROP_VIEW 143#define SQL_DYNAMIC_CURSOR_ATTRIBUTES1 144#define SQL_DYNAMIC_CURSOR_ATTRIBUTES2 145#define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 146#define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 147#define SQL_INDEX_KEYWORDS 148#define SQL_INFO_SCHEMA_VIEWS 149#define SQL_KEYSET_CURSOR_ATTRIBUTES1 150#define SQL_KEYSET_CURSOR_ATTRIBUTES2 151#define SQL_MAX_ASYNC_CONCURRENT_STATEMENTS 10022 /* new X/Open spec */#define SQL_ODBC_INTERFACE_CONFORMANCE 152#define SQL_PARAM_ARRAY_ROW_COUNTS 153#define SQL_PARAM_ARRAY_SELECTS 154#define SQL_SCHEMA_TERM SQL_OWNER_TERM#define SQL_SCHEMA_USAGE SQL_OWNER_USAGE#define SQL_SQL92_DATETIME_FUNCTIONS 155#define SQL_SQL92_FOREIGN_KEY_DELETE_RULE 156#define SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 157#define SQL_SQL92_GRANT 158#define SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 159#define SQL_SQL92_PREDICATES 160#define SQL_SQL92_RELATIONAL_JOIN_OPERATORS 161#define SQL_SQL92_REVOKE 162#define SQL_SQL92_ROW_VALUE_CONSTRUCTOR 163#define SQL_SQL92_STRING_FUNCTIONS 164#define SQL_SQL92_VALUE_EXPRESSIONS 165#define SQL_STANDARD_CLI_CONFORMANCE 166#define SQL_STATIC_CURSOR_ATTRIBUTES1 167#define SQL_STATIC_CURSOR_ATTRIBUTES2 168#define SQL_AGGREGATE_FUNCTIONS 169#define SQL_DDL_INDEX 170#define SQL_DM_VER 171#define SQL_INSERT_STATEMENT 172#define SQL_UNION_STATEMENT SQL_UNION#endif /* ODBCVER >= 0x0300 */#define SQL_DTC_TRANSITION_COST 1750/* SQL_ALTER_TABLE bitmasks */#if (ODBCVER >= 0x0300)/* the following 5 bitmasks are defined in sql.h*#define SQL_AT_ADD_COLUMN 0x00000001L*#define SQL_AT_DROP_COLUMN 0x00000002L*#define SQL_AT_ADD_CONSTRAINT 0x00000008L*/#define SQL_AT_ADD_COLUMN_SINGLE 0x00000020L#define SQL_AT_ADD_COLUMN_DEFAULT 0x00000040L#define SQL_AT_ADD_COLUMN_COLLATION 0x00000080L#define SQL_AT_SET_COLUMN_DEFAULT 0x00000100L#define SQL_AT_DROP_COLUMN_DEFAULT 0x00000200L#define SQL_AT_DROP_COLUMN_CASCADE 0x00000400L#define SQL_AT_DROP_COLUMN_RESTRICT 0x00000800L#define SQL_AT_ADD_TABLE_CONSTRAINT 0x00001000L#define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE 0x00002000L#define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT 0x00004000L#define SQL_AT_CONSTRAINT_NAME_DEFINITION 0x00008000L#define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED 0x00010000L#define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00020000L#define SQL_AT_CONSTRAINT_DEFERRABLE 0x00040000L#define SQL_AT_CONSTRAINT_NON_DEFERRABLE 0x00080000L#endif /* ODBCVER >= 0x0300 *//* SQL_CONVERT_* return value bitmasks */#define SQL_CVT_CHAR 0x00000001L#define SQL_CVT_NUMERIC 0x00000002L#define SQL_CVT_DECIMAL 0x00000004L#define SQL_CVT_INTEGER 0x00000008L#define SQL_CVT_SMALLINT 0x00000010L#define SQL_CVT_FLOAT 0x00000020L#define SQL_CVT_REAL 0x00000040L#define SQL_CVT_DOUBLE 0x00000080L#define SQL_CVT_VARCHAR 0x00000100L#define SQL_CVT_LONGVARCHAR 0x00000200L#define SQL_CVT_BINARY 0x00000400L#define SQL_CVT_VARBINARY 0x00000800L#define SQL_CVT_BIT 0x00001000L#define SQL_CVT_TINYINT 0x00002000L#define SQL_CVT_BIGINT 0x00004000L#define SQL_CVT_DATE 0x00008000L#define SQL_CVT_TIME 0x00010000L#define SQL_CVT_TIMESTAMP 0x00020000L#define SQL_CVT_LONGVARBINARY 0x00040000L#if (ODBCVER >= 0x0300)#define SQL_CVT_INTERVAL_YEAR_MONTH 0x00080000L#define SQL_CVT_INTERVAL_DAY_TIME 0x00100000L#define SQL_CVT_WCHAR 0x00200000L#define SQL_CVT_WLONGVARCHAR 0x00400000L#define SQL_CVT_WVARCHAR 0x00800000L#endif /* ODBCVER >= 0x0300 *//* SQL_CONVERT_FUNCTIONS functions */#define SQL_FN_CVT_CONVERT 0x00000001L#if (ODBCVER >= 0x0300)#define SQL_FN_CVT_CAST 0x00000002L#endif /* ODBCVER >= 0x0300 *//* SQL_STRING_FUNCTIONS functions */#define SQL_FN_STR_CONCAT 0x00000001L#define SQL_FN_STR_INSERT 0x00000002L#define SQL_FN_STR_LEFT 0x00000004L#define SQL_FN_STR_LTRIM 0x00000008L#define SQL_FN_STR_LENGTH 0x00000010L#define SQL_FN_STR_LOCATE 0x00000020L#define SQL_FN_STR_LCASE 0x00000040L#define SQL_FN_STR_REPEAT 0x00000080L#define SQL_FN_STR_REPLACE 0x00000100L#define SQL_FN_STR_RIGHT 0x00000200L#define SQL_FN_STR_RTRIM 0x00000400L#define SQL_FN_STR_SUBSTRING 0x00000800L#define SQL_FN_STR_UCASE 0x00001000L#define SQL_FN_STR_ASCII 0x00002000L#define SQL_FN_STR_CHAR 0x00004000L#define SQL_FN_STR_DIFFERENCE 0x00008000L#define SQL_FN_STR_LOCATE_2 0x00010000L#define SQL_FN_STR_SOUNDEX 0x00020000L#define SQL_FN_STR_SPACE 0x00040000L#if (ODBCVER >= 0x0300)#define SQL_FN_STR_BIT_LENGTH 0x00080000L#define SQL_FN_STR_CHAR_LENGTH 0x00100000L#define SQL_FN_STR_CHARACTER_LENGTH 0x00200000L#define SQL_FN_STR_OCTET_LENGTH 0x00400000L#define SQL_FN_STR_POSITION 0x00800000L#endif /* ODBCVER >= 0x0300 *//* SQL_SQL92_STRING_FUNCTIONS */#if (ODBCVER >= 0x0300)#define SQL_SSF_CONVERT 0x00000001L#define SQL_SSF_LOWER 0x00000002L#define SQL_SSF_UPPER 0x00000004L#define SQL_SSF_SUBSTRING 0x00000008L#define SQL_SSF_TRANSLATE 0x00000010L#define SQL_SSF_TRIM_BOTH 0x00000020L#define SQL_SSF_TRIM_LEADING 0x00000040L#define SQL_SSF_TRIM_TRAILING 0x00000080L#endif /* ODBCVER >= 0x0300 *//* SQL_NUMERIC_FUNCTIONS functions */#define SQL_FN_NUM_ABS 0x00000001L#define SQL_FN_NUM_ACOS 0x00000002L#define SQL_FN_NUM_ASIN 0x00000004L#define SQL_FN_NUM_ATAN 0x00000008L#define SQL_FN_NUM_ATAN2 0x00000010L
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -