|  | /** | 
|  | * This file has no copyright assigned and is placed in the Public Domain. | 
|  | * This file is part of the w64 mingw-runtime package. | 
|  | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
|  | */ | 
|  | #ifndef __ODBCSS | 
|  | #define __ODBCSS | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | #define SQL_MAX_SQLSERVERNAME 128 | 
|  |  | 
|  | #define SQL_COPT_SS_BASE 1200 | 
|  | #define SQL_COPT_SS_REMOTE_PWD (SQL_COPT_SS_BASE+1) | 
|  | #define SQL_COPT_SS_USE_PROC_FOR_PREP (SQL_COPT_SS_BASE+2) | 
|  | #define SQL_COPT_SS_INTEGRATED_SECURITY (SQL_COPT_SS_BASE+3) | 
|  | #define SQL_COPT_SS_PRESERVE_CURSORS (SQL_COPT_SS_BASE+4) | 
|  | #define SQL_COPT_SS_USER_DATA (SQL_COPT_SS_BASE+5) | 
|  | #define SQL_COPT_SS_ENLIST_IN_DTC SQL_ATTR_ENLIST_IN_DTC | 
|  | #define SQL_COPT_SS_ENLIST_IN_XA SQL_ATTR_ENLIST_IN_XA | 
|  |  | 
|  | #define SQL_COPT_SS_FALLBACK_CONNECT (SQL_COPT_SS_BASE+10) | 
|  | #define SQL_COPT_SS_PERF_DATA (SQL_COPT_SS_BASE+11) | 
|  | #define SQL_COPT_SS_PERF_DATA_LOG (SQL_COPT_SS_BASE+12) | 
|  | #define SQL_COPT_SS_PERF_QUERY_INTERVAL (SQL_COPT_SS_BASE+13) | 
|  | #define SQL_COPT_SS_PERF_QUERY_LOG (SQL_COPT_SS_BASE+14) | 
|  | #define SQL_COPT_SS_PERF_QUERY (SQL_COPT_SS_BASE+15) | 
|  | #define SQL_COPT_SS_PERF_DATA_LOG_NOW (SQL_COPT_SS_BASE+16) | 
|  | #define SQL_COPT_SS_QUOTED_IDENT (SQL_COPT_SS_BASE+17) | 
|  | #define SQL_COPT_SS_ANSI_NPW (SQL_COPT_SS_BASE+18) | 
|  | #define SQL_COPT_SS_BCP (SQL_COPT_SS_BASE+19) | 
|  | #define SQL_COPT_SS_TRANSLATE (SQL_COPT_SS_BASE+20) | 
|  | #define SQL_COPT_SS_ATTACHDBFILENAME (SQL_COPT_SS_BASE+21) | 
|  | #define SQL_COPT_SS_CONCAT_NULL (SQL_COPT_SS_BASE+22) | 
|  | #define SQL_COPT_SS_ENCRYPT (SQL_COPT_SS_BASE+23) | 
|  |  | 
|  | #define SQL_COPT_SS_MAX_USED SQL_COPT_SS_ENCRYPT | 
|  |  | 
|  | #define SQL_SOPT_SS_BASE 1225 | 
|  | #define SQL_SOPT_SS_TEXTPTR_LOGGING (SQL_SOPT_SS_BASE+0) | 
|  | #define SQL_SOPT_SS_CURRENT_COMMAND (SQL_SOPT_SS_BASE+1) | 
|  | #define SQL_SOPT_SS_HIDDEN_COLUMNS (SQL_SOPT_SS_BASE+2) | 
|  | #define SQL_SOPT_SS_NOBROWSETABLE (SQL_SOPT_SS_BASE+3) | 
|  | #define SQL_SOPT_SS_REGIONALIZE (SQL_SOPT_SS_BASE+4) | 
|  | #define SQL_SOPT_SS_CURSOR_OPTIONS (SQL_SOPT_SS_BASE+5) | 
|  | #define SQL_SOPT_SS_NOCOUNT_STATUS (SQL_SOPT_SS_BASE+6) | 
|  | #define SQL_SOPT_SS_DEFER_PREPARE (SQL_SOPT_SS_BASE+7) | 
|  |  | 
|  | #define SQL_SOPT_SS_MAX_USED SQL_SOPT_SS_DEFER_PREPARE | 
|  |  | 
|  | #define SQL_COPT_SS_BASE_EX 1240 | 
|  | #define SQL_COPT_SS_BROWSE_CONNECT (SQL_COPT_SS_BASE_EX+1) | 
|  | #define SQL_COPT_SS_BROWSE_SERVER (SQL_COPT_SS_BASE_EX+2) | 
|  | #define SQL_COPT_SS_WARN_ON_CP_ERROR (SQL_COPT_SS_BASE_EX+3) | 
|  |  | 
|  | #define SQL_COPT_SS_CONNECTION_DEAD (SQL_COPT_SS_BASE_EX+4) | 
|  |  | 
|  | #define SQL_COPT_SS_BROWSE_CACHE_DATA (SQL_COPT_SS_BASE_EX+5) | 
|  |  | 
|  | #define SQL_COPT_SS_RESET_CONNECTION (SQL_COPT_SS_BASE_EX+6) | 
|  |  | 
|  | #define SQL_COPT_SS_EX_MAX_USED SQL_COPT_SS_RESET_CONNECTION | 
|  |  | 
|  | #define SQL_UP_OFF 0L | 
|  | #define SQL_UP_ON 1L | 
|  | #define SQL_UP_ON_DROP 2L | 
|  | #define SQL_UP_DEFAULT SQL_UP_ON | 
|  |  | 
|  | #define SQL_IS_OFF 0L | 
|  | #define SQL_IS_ON 1L | 
|  | #define SQL_IS_DEFAULT SQL_IS_OFF | 
|  |  | 
|  | #define SQL_PC_OFF 0L | 
|  | #define SQL_PC_ON 1L | 
|  | #define SQL_PC_DEFAULT SQL_PC_OFF | 
|  |  | 
|  | #define SQL_UD_NOTSET NULL | 
|  |  | 
|  | #define SQL_XL_OFF 0L | 
|  | #define SQL_XL_ON 1L | 
|  | #define SQL_XL_DEFAULT SQL_XL_ON | 
|  |  | 
|  | #define SQL_FB_OFF 0L | 
|  | #define SQL_FB_ON 1L | 
|  | #define SQL_FB_DEFAULT SQL_FB_OFF | 
|  |  | 
|  | #define SQL_BCP_OFF 0L | 
|  | #define SQL_BCP_ON 1L | 
|  | #define SQL_BCP_DEFAULT SQL_BCP_OFF | 
|  |  | 
|  | #define SQL_QI_OFF 0L | 
|  | #define SQL_QI_ON 1L | 
|  | #define SQL_QI_DEFAULT SQL_QI_ON | 
|  |  | 
|  | #define SQL_AD_OFF 0L | 
|  | #define SQL_AD_ON 1L | 
|  | #define SQL_AD_DEFAULT SQL_AD_ON | 
|  |  | 
|  | #define SQL_CN_OFF 0L | 
|  | #define SQL_CN_ON 1L | 
|  | #define SQL_CN_DEFAULT SQL_CN_ON | 
|  |  | 
|  | #define SQL_TL_OFF 0L | 
|  | #define SQL_TL_ON 1L | 
|  | #define SQL_TL_DEFAULT SQL_TL_ON | 
|  |  | 
|  | #define SQL_HC_OFF 0L | 
|  | #define SQL_HC_ON 1L | 
|  | #define SQL_HC_DEFAULT SQL_HC_OFF | 
|  |  | 
|  | #define SQL_NB_OFF 0L | 
|  | #define SQL_NB_ON 1L | 
|  | #define SQL_NB_DEFAULT SQL_NB_OFF | 
|  |  | 
|  | #define SQL_RE_OFF 0L | 
|  | #define SQL_RE_ON 1L | 
|  | #define SQL_RE_DEFAULT SQL_RE_OFF | 
|  |  | 
|  | #define SQL_CO_OFF 0L | 
|  | #define SQL_CO_FFO 1L | 
|  | #define SQL_CO_AF 2L | 
|  | #define SQL_CO_FFO_AF (SQL_CO_FFO|SQL_CO_AF) | 
|  | #define SQL_CO_FIREHOSE_AF 4L | 
|  | #define SQL_CO_DEFAULT SQL_CO_OFF | 
|  |  | 
|  | #define SQL_NC_OFF 0L | 
|  | #define SQL_NC_ON 1L | 
|  |  | 
|  | #define SQL_DP_OFF 0L | 
|  | #define SQL_DP_ON 1L | 
|  |  | 
|  | #define SQL_EN_OFF 0L | 
|  | #define SQL_EN_ON 1L | 
|  |  | 
|  | #define SQL_MORE_INFO_NO 0L | 
|  | #define SQL_MORE_INFO_YES 1L | 
|  |  | 
|  | #define SQL_CACHE_DATA_NO 0L | 
|  | #define SQL_CACHE_DATA_YES 1L | 
|  |  | 
|  | #define SQL_RESET_YES 1L | 
|  |  | 
|  | #define SQL_WARN_NO 0L | 
|  | #define SQL_WARN_YES 1L | 
|  |  | 
|  | #define SQL_CURSOR_FAST_FORWARD_ONLY 8 | 
|  |  | 
|  | #define SQL_CA_SS_BASE 1200 | 
|  | #define SQL_CA_SS_COLUMN_SSTYPE (SQL_CA_SS_BASE+0) | 
|  | #define SQL_CA_SS_COLUMN_UTYPE (SQL_CA_SS_BASE+1) | 
|  | #define SQL_CA_SS_NUM_ORDERS (SQL_CA_SS_BASE+2) | 
|  | #define SQL_CA_SS_COLUMN_ORDER (SQL_CA_SS_BASE+3) | 
|  | #define SQL_CA_SS_COLUMN_VARYLEN (SQL_CA_SS_BASE+4) | 
|  | #define SQL_CA_SS_NUM_COMPUTES (SQL_CA_SS_BASE+5) | 
|  | #define SQL_CA_SS_COMPUTE_ID (SQL_CA_SS_BASE+6) | 
|  | #define SQL_CA_SS_COMPUTE_BYLIST (SQL_CA_SS_BASE+7) | 
|  | #define SQL_CA_SS_COLUMN_ID (SQL_CA_SS_BASE+8) | 
|  | #define SQL_CA_SS_COLUMN_OP (SQL_CA_SS_BASE+9) | 
|  | #define SQL_CA_SS_COLUMN_SIZE (SQL_CA_SS_BASE+10) | 
|  | #define SQL_CA_SS_COLUMN_HIDDEN (SQL_CA_SS_BASE+11) | 
|  | #define SQL_CA_SS_COLUMN_KEY (SQL_CA_SS_BASE+12) | 
|  |  | 
|  | #define SQL_CA_SS_COLUMN_COLLATION (SQL_CA_SS_BASE+14) | 
|  | #define SQL_CA_SS_VARIANT_TYPE (SQL_CA_SS_BASE+15) | 
|  | #define SQL_CA_SS_VARIANT_SQL_TYPE (SQL_CA_SS_BASE+16) | 
|  | #define SQL_CA_SS_VARIANT_SERVER_TYPE (SQL_CA_SS_BASE+17) | 
|  | #define SQL_CA_SS_MAX_USED (SQL_CA_SS_BASE+18) | 
|  |  | 
|  | #define SQLTEXT 0x23 | 
|  | #define SQLVARBINARY 0x25 | 
|  | #define SQLINTN 0x26 | 
|  | #define SQLVARCHAR 0x27 | 
|  | #define SQLBINARY 0x2d | 
|  | #define SQLIMAGE 0x22 | 
|  | #define SQLCHARACTER 0x2f | 
|  | #define SQLINT1 0x30 | 
|  | #define SQLBIT 0x32 | 
|  | #define SQLINT2 0x34 | 
|  | #define SQLINT4 0x38 | 
|  | #define SQLMONEY 0x3c | 
|  | #define SQLDATETIME 0x3d | 
|  | #define SQLFLT8 0x3e | 
|  | #define SQLFLTN 0x6d | 
|  | #define SQLMONEYN 0x6e | 
|  | #define SQLDATETIMN 0x6f | 
|  | #define SQLFLT4 0x3b | 
|  | #define SQLMONEY4 0x7a | 
|  | #define SQLDATETIM4 0x3a | 
|  |  | 
|  | #define SQLDECIMAL 0x6a | 
|  | #define SQLNUMERIC 0x6c | 
|  |  | 
|  | #define SQLUNIQUEID 0x24 | 
|  | #define SQLBIGCHAR 0xaf | 
|  | #define SQLBIGVARCHAR 0xa7 | 
|  | #define SQLBIGBINARY 0xad | 
|  | #define SQLBIGVARBINARY 0xa5 | 
|  | #define SQLBITN 0x68 | 
|  | #define SQLNCHAR 0xef | 
|  | #define SQLNVARCHAR 0xe7 | 
|  | #define SQLNTEXT 0x63 | 
|  |  | 
|  | #define SQLINT8 0x7f | 
|  | #define SQLVARIANT 0x62 | 
|  |  | 
|  | #define SQLudtBINARY 3 | 
|  | #define SQLudtBIT 16 | 
|  | #define SQLudtBITN 0 | 
|  | #define SQLudtCHAR 1 | 
|  | #define SQLudtDATETIM4 22 | 
|  | #define SQLudtDATETIME 12 | 
|  | #define SQLudtDATETIMN 15 | 
|  | #define SQLudtDECML 24 | 
|  | #define SQLudtDECMLN 26 | 
|  | #define SQLudtFLT4 23 | 
|  | #define SQLudtFLT8 8 | 
|  | #define SQLudtFLTN 14 | 
|  | #define SQLudtIMAGE 20 | 
|  | #define SQLudtINT1 5 | 
|  | #define SQLudtINT2 6 | 
|  | #define SQLudtINT4 7 | 
|  | #define SQLudtINTN 13 | 
|  | #define SQLudtMONEY 11 | 
|  | #define SQLudtMONEY4 21 | 
|  | #define SQLudtMONEYN 17 | 
|  | #define SQLudtNUM 10 | 
|  | #define SQLudtNUMN 25 | 
|  | #define SQLudtSYSNAME 18 | 
|  | #define SQLudtTEXT 19 | 
|  | #define SQLudtTIMESTAMP 80 | 
|  | #define SQLudtUNIQUEIDENTIFIER 0 | 
|  | #define SQLudtVARBINARY 4 | 
|  | #define SQLudtVARCHAR 2 | 
|  | #define MIN_USER_DATATYPE 256 | 
|  |  | 
|  | #define SQLAOPSTDEV 0x30 | 
|  | #define SQLAOPSTDEVP 0x31 | 
|  | #define SQLAOPVAR 0x32 | 
|  | #define SQLAOPVARP 0x33 | 
|  | #define SQLAOPCNT 0x4b | 
|  | #define SQLAOPSUM 0x4d | 
|  | #define SQLAOPAVG 0x4f | 
|  | #define SQLAOPMIN 0x51 | 
|  | #define SQLAOPMAX 0x52 | 
|  | #define SQLAOPANY 0x53 | 
|  | #define SQLAOPNOOP 0x56 | 
|  |  | 
|  | #define SQL_INFO_SS_FIRST 1199 | 
|  | #define SQL_INFO_SS_NETLIB_NAMEW (SQL_INFO_SS_FIRST+0) | 
|  | #define SQL_INFO_SS_NETLIB_NAMEA (SQL_INFO_SS_FIRST+1) | 
|  | #define SQL_INFO_SS_MAX_USED SQL_INFO_SS_NETLIB_NAMEA | 
|  | #ifdef UNICODE | 
|  | #define SQL_INFO_SS_NETLIB_NAME SQL_INFO_SS_NETLIB_NAMEW | 
|  | #else | 
|  | #define SQL_INFO_SS_NETLIB_NAME SQL_INFO_SS_NETLIB_NAMEA | 
|  | #endif | 
|  |  | 
|  | #define SQL_SS_VARIANT -150 | 
|  |  | 
|  | #define SQL_DIAG_SS_BASE (-1150) | 
|  | #define SQL_DIAG_SS_MSGSTATE (SQL_DIAG_SS_BASE) | 
|  | #define SQL_DIAG_SS_SEVERITY (SQL_DIAG_SS_BASE-1) | 
|  | #define SQL_DIAG_SS_SRVNAME (SQL_DIAG_SS_BASE-2) | 
|  | #define SQL_DIAG_SS_PROCNAME (SQL_DIAG_SS_BASE-3) | 
|  | #define SQL_DIAG_SS_LINE (SQL_DIAG_SS_BASE-4) | 
|  |  | 
|  | #define SQL_DIAG_DFC_SS_BASE (-200) | 
|  | #define SQL_DIAG_DFC_SS_ALTER_DATABASE (SQL_DIAG_DFC_SS_BASE-0) | 
|  | #define SQL_DIAG_DFC_SS_CHECKPOINT (SQL_DIAG_DFC_SS_BASE-1) | 
|  | #define SQL_DIAG_DFC_SS_CONDITION (SQL_DIAG_DFC_SS_BASE-2) | 
|  | #define SQL_DIAG_DFC_SS_CREATE_DATABASE (SQL_DIAG_DFC_SS_BASE-3) | 
|  | #define SQL_DIAG_DFC_SS_CREATE_DEFAULT (SQL_DIAG_DFC_SS_BASE-4) | 
|  | #define SQL_DIAG_DFC_SS_CREATE_PROCEDURE (SQL_DIAG_DFC_SS_BASE-5) | 
|  | #define SQL_DIAG_DFC_SS_CREATE_RULE (SQL_DIAG_DFC_SS_BASE-6) | 
|  | #define SQL_DIAG_DFC_SS_CREATE_TRIGGER (SQL_DIAG_DFC_SS_BASE-7) | 
|  | #define SQL_DIAG_DFC_SS_CURSOR_DECLARE (SQL_DIAG_DFC_SS_BASE-8) | 
|  | #define SQL_DIAG_DFC_SS_CURSOR_OPEN (SQL_DIAG_DFC_SS_BASE-9) | 
|  | #define SQL_DIAG_DFC_SS_CURSOR_FETCH (SQL_DIAG_DFC_SS_BASE-10) | 
|  | #define SQL_DIAG_DFC_SS_CURSOR_CLOSE (SQL_DIAG_DFC_SS_BASE-11) | 
|  | #define SQL_DIAG_DFC_SS_DEALLOCATE_CURSOR (SQL_DIAG_DFC_SS_BASE-12) | 
|  | #define SQL_DIAG_DFC_SS_DBCC (SQL_DIAG_DFC_SS_BASE-13) | 
|  | #define SQL_DIAG_DFC_SS_DISK (SQL_DIAG_DFC_SS_BASE-14) | 
|  | #define SQL_DIAG_DFC_SS_DROP_DATABASE (SQL_DIAG_DFC_SS_BASE-15) | 
|  | #define SQL_DIAG_DFC_SS_DROP_DEFAULT (SQL_DIAG_DFC_SS_BASE-16) | 
|  | #define SQL_DIAG_DFC_SS_DROP_PROCEDURE (SQL_DIAG_DFC_SS_BASE-17) | 
|  | #define SQL_DIAG_DFC_SS_DROP_RULE (SQL_DIAG_DFC_SS_BASE-18) | 
|  | #define SQL_DIAG_DFC_SS_DROP_TRIGGER (SQL_DIAG_DFC_SS_BASE-19) | 
|  | #define SQL_DIAG_DFC_SS_DUMP_DATABASE (SQL_DIAG_DFC_SS_BASE-20) | 
|  | #define SQL_DIAG_DFC_SS_DUMP_TABLE (SQL_DIAG_DFC_SS_BASE-21) | 
|  | #define SQL_DIAG_DFC_SS_DUMP_TRANSACTION (SQL_DIAG_DFC_SS_BASE-22) | 
|  | #define SQL_DIAG_DFC_SS_GOTO (SQL_DIAG_DFC_SS_BASE-23) | 
|  | #define SQL_DIAG_DFC_SS_INSERT_BULK (SQL_DIAG_DFC_SS_BASE-24) | 
|  | #define SQL_DIAG_DFC_SS_KILL (SQL_DIAG_DFC_SS_BASE-25) | 
|  | #define SQL_DIAG_DFC_SS_LOAD_DATABASE (SQL_DIAG_DFC_SS_BASE-26) | 
|  | #define SQL_DIAG_DFC_SS_LOAD_HEADERONLY (SQL_DIAG_DFC_SS_BASE-27) | 
|  | #define SQL_DIAG_DFC_SS_LOAD_TABLE (SQL_DIAG_DFC_SS_BASE-28) | 
|  | #define SQL_DIAG_DFC_SS_LOAD_TRANSACTION (SQL_DIAG_DFC_SS_BASE-29) | 
|  | #define SQL_DIAG_DFC_SS_PRINT (SQL_DIAG_DFC_SS_BASE-30) | 
|  | #define SQL_DIAG_DFC_SS_RAISERROR (SQL_DIAG_DFC_SS_BASE-31) | 
|  | #define SQL_DIAG_DFC_SS_READTEXT (SQL_DIAG_DFC_SS_BASE-32) | 
|  | #define SQL_DIAG_DFC_SS_RECONFIGURE (SQL_DIAG_DFC_SS_BASE-33) | 
|  | #define SQL_DIAG_DFC_SS_RETURN (SQL_DIAG_DFC_SS_BASE-34) | 
|  | #define SQL_DIAG_DFC_SS_SELECT_INTO (SQL_DIAG_DFC_SS_BASE-35) | 
|  | #define SQL_DIAG_DFC_SS_SET (SQL_DIAG_DFC_SS_BASE-36) | 
|  | #define SQL_DIAG_DFC_SS_SET_IDENTITY_INSERT (SQL_DIAG_DFC_SS_BASE-37) | 
|  | #define SQL_DIAG_DFC_SS_SET_ROW_COUNT (SQL_DIAG_DFC_SS_BASE-38) | 
|  | #define SQL_DIAG_DFC_SS_SET_STATISTICS (SQL_DIAG_DFC_SS_BASE-39) | 
|  | #define SQL_DIAG_DFC_SS_SET_TEXTSIZE (SQL_DIAG_DFC_SS_BASE-40) | 
|  | #define SQL_DIAG_DFC_SS_SETUSER (SQL_DIAG_DFC_SS_BASE-41) | 
|  | #define SQL_DIAG_DFC_SS_SHUTDOWN (SQL_DIAG_DFC_SS_BASE-42) | 
|  | #define SQL_DIAG_DFC_SS_TRANS_BEGIN (SQL_DIAG_DFC_SS_BASE-43) | 
|  | #define SQL_DIAG_DFC_SS_TRANS_COMMIT (SQL_DIAG_DFC_SS_BASE-44) | 
|  | #define SQL_DIAG_DFC_SS_TRANS_PREPARE (SQL_DIAG_DFC_SS_BASE-45) | 
|  | #define SQL_DIAG_DFC_SS_TRANS_ROLLBACK (SQL_DIAG_DFC_SS_BASE-46) | 
|  | #define SQL_DIAG_DFC_SS_TRANS_SAVE (SQL_DIAG_DFC_SS_BASE-47) | 
|  | #define SQL_DIAG_DFC_SS_TRUNCATE_TABLE (SQL_DIAG_DFC_SS_BASE-48) | 
|  | #define SQL_DIAG_DFC_SS_UPDATE_STATISTICS (SQL_DIAG_DFC_SS_BASE-49) | 
|  | #define SQL_DIAG_DFC_SS_UPDATETEXT (SQL_DIAG_DFC_SS_BASE-50) | 
|  | #define SQL_DIAG_DFC_SS_USE (SQL_DIAG_DFC_SS_BASE-51) | 
|  | #define SQL_DIAG_DFC_SS_WAITFOR (SQL_DIAG_DFC_SS_BASE-52) | 
|  | #define SQL_DIAG_DFC_SS_WRITETEXT (SQL_DIAG_DFC_SS_BASE-53) | 
|  | #define SQL_DIAG_DFC_SS_DENY (SQL_DIAG_DFC_SS_BASE-54) | 
|  | #define SQL_DIAG_DFC_SS_SET_XCTLVL (SQL_DIAG_DFC_SS_BASE-55) | 
|  |  | 
|  | #define EX_ANY 0 | 
|  | #define EX_INFO 10 | 
|  | #define EX_MAXISEVERITY EX_INFO | 
|  | #define EX_MISSING 11 | 
|  | #define EX_TYPE 12 | 
|  | #define EX_DEADLOCK 13 | 
|  | #define EX_PERMIT 14 | 
|  | #define EX_SYNTAX 15 | 
|  | #define EX_USER 16 | 
|  | #define EX_RESOURCE 17 | 
|  | #define EX_INTOK 18 | 
|  | #define MAXUSEVERITY EX_INTOK | 
|  | #define EX_LIMIT 19 | 
|  | #define EX_CMDFATAL 20 | 
|  | #define MINFATALERR EX_CMDFATAL | 
|  | #define EX_DBFATAL 21 | 
|  | #define EX_TABCORRUPT 22 | 
|  | #define EX_DBCORRUPT 23 | 
|  | #define EX_HARDWARE 24 | 
|  | #define EX_CONTROL 25 | 
|  |  | 
|  | #ifndef MAXNUMERICLEN | 
|  |  | 
|  | #define DBMAXCHAR (8000+1) | 
|  | #define MAXNAME (SQL_MAX_SQLSERVERNAME+1) | 
|  |  | 
|  | #ifdef UNICODE | 
|  | typedef wchar_t DBCHAR; | 
|  | #else | 
|  | typedef char DBCHAR; | 
|  | #endif | 
|  | typedef unsigned char DBBINARY; | 
|  | typedef unsigned char DBTINYINT; | 
|  | typedef short DBSMALLINT; | 
|  | typedef unsigned short DBUSMALLINT; | 
|  | typedef double DBFLT8; | 
|  | typedef unsigned char DBBIT; | 
|  | typedef unsigned char DBBOOL; | 
|  | typedef float DBFLT4; | 
|  | typedef DBFLT4 DBREAL; | 
|  | typedef UINT DBUBOOL; | 
|  |  | 
|  | typedef struct dbvarychar { | 
|  | DBSMALLINT len; | 
|  | DBCHAR str[DBMAXCHAR]; | 
|  | } DBVARYCHAR; | 
|  |  | 
|  | typedef struct dbvarybin { | 
|  | DBSMALLINT len; | 
|  | BYTE array[DBMAXCHAR]; | 
|  | } DBVARYBIN; | 
|  |  | 
|  | typedef struct dbmoney { | 
|  | LONG mnyhigh; | 
|  | ULONG mnylow; | 
|  | } DBMONEY; | 
|  |  | 
|  | typedef struct dbdatetime { | 
|  | LONG dtdays; | 
|  | ULONG dttime; | 
|  | } DBDATETIME; | 
|  |  | 
|  | typedef struct dbdatetime4 { | 
|  | USHORT numdays; | 
|  | USHORT nummins; | 
|  | } DBDATETIM4; | 
|  |  | 
|  | typedef LONG DBMONEY4; | 
|  |  | 
|  | #define DBNUM_PREC_TYPE BYTE | 
|  | #define DBNUM_SCALE_TYPE BYTE | 
|  | #define DBNUM_VAL_TYPE BYTE | 
|  |  | 
|  | #if (ODBCVER < 0x0300) | 
|  | #define MAXNUMERICLEN 16 | 
|  |  | 
|  | typedef struct dbnumeric { | 
|  | DBNUM_PREC_TYPE precision; | 
|  | DBNUM_SCALE_TYPE scale; | 
|  | BYTE sign; | 
|  | DBNUM_VAL_TYPE val[MAXNUMERICLEN]; | 
|  | } DBNUMERIC; | 
|  | typedef DBNUMERIC DBDECIMAL; | 
|  | #else | 
|  | #define MAXNUMERICLEN SQL_MAX_NUMERIC_LEN | 
|  | typedef SQL_NUMERIC_STRUCT DBNUMERIC; | 
|  | typedef SQL_NUMERIC_STRUCT DBDECIMAL; | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #ifndef INT | 
|  | typedef int INT; | 
|  | typedef long DBINT; | 
|  | #ifndef _LPCBYTE_DEFINED | 
|  | #define _LPCBYTE_DEFINED | 
|  | typedef const LPBYTE LPCBYTE; | 
|  | #endif | 
|  | typedef DBINT *LPDBINT; | 
|  | #endif | 
|  |  | 
|  | typedef struct sqlperf { | 
|  | DWORD TimerResolution; | 
|  | DWORD SQLidu; | 
|  | DWORD SQLiduRows; | 
|  | DWORD SQLSelects; | 
|  | DWORD SQLSelectRows; | 
|  | DWORD Transactions; | 
|  | DWORD SQLPrepares; | 
|  | DWORD ExecDirects; | 
|  | DWORD SQLExecutes; | 
|  | DWORD CursorOpens; | 
|  | DWORD CursorSize; | 
|  | DWORD CursorUsed; | 
|  | LDOUBLE PercentCursorUsed; | 
|  | LDOUBLE AvgFetchTime; | 
|  | LDOUBLE AvgCursorSize; | 
|  | LDOUBLE AvgCursorUsed; | 
|  | DWORD SQLFetchTime; | 
|  | DWORD SQLFetchCount; | 
|  | DWORD CurrentStmtCount; | 
|  | DWORD MaxOpenStmt; | 
|  | DWORD SumOpenStmt; | 
|  | DWORD CurrentConnectionCount; | 
|  | DWORD MaxConnectionsOpened; | 
|  | DWORD SumConnectionsOpened; | 
|  | DWORD SumConnectiontime; | 
|  | LDOUBLE AvgTimeOpened; | 
|  | DWORD ServerRndTrips; | 
|  | DWORD BuffersSent; | 
|  | DWORD BuffersRec; | 
|  | DWORD BytesSent; | 
|  | DWORD BytesRec; | 
|  | DWORD msExecutionTime; | 
|  | DWORD msNetWorkServerTime; | 
|  | } SQLPERF; | 
|  |  | 
|  | #define SQL_PERF_START 1 | 
|  | #define SQL_PERF_STOP 2 | 
|  |  | 
|  | #define SQL_SS_DL_DEFAULT TEXT("STATS.LOG") | 
|  | #define SQL_SS_QL_DEFAULT TEXT("QUERY.LOG") | 
|  | #define SQL_SS_QI_DEFAULT 30000 | 
|  |  | 
|  | #define SUCCEED 1 | 
|  | #define FAIL 0 | 
|  | #define SUCCEED_ABORT 2 | 
|  | #define SUCCEED_ASYNC 3 | 
|  |  | 
|  | #define DB_IN 1 | 
|  | #define DB_OUT 2 | 
|  |  | 
|  | #define BCPMAXERRS 1 | 
|  | #define BCPFIRST 2 | 
|  | #define BCPLAST 3 | 
|  | #define BCPBATCH 4 | 
|  | #define BCPKEEPNULLS 5 | 
|  | #define BCPABORT 6 | 
|  | #define BCPODBC 7 | 
|  | #define BCPKEEPIDENTITY 8 | 
|  | #define BCP6xFILEFMT 9 | 
|  | #define BCPHINTSA 10 | 
|  | #define BCPHINTSW 11 | 
|  | #define BCPFILECP 12 | 
|  | #define BCPUNICODEFILE 13 | 
|  | #define BCPTEXTFILE 14 | 
|  | #define BCPFILEFMT 15 | 
|  |  | 
|  | #define BCPFILECP_ACP 0 | 
|  | #define BCPFILECP_OEMCP 1 | 
|  | #define BCPFILECP_RAW (-1) | 
|  |  | 
|  | #define SQL_VARLEN_DATA (-10) | 
|  |  | 
|  | DBINT SQL_API bcp_batch(HDBC); | 
|  | RETCODE SQL_API bcp_bind(HDBC,LPCBYTE,INT,DBINT,LPCBYTE,INT,INT,INT); | 
|  | RETCODE SQL_API bcp_colfmt(HDBC,INT,BYTE,INT,DBINT,LPCBYTE,INT,INT); | 
|  | RETCODE SQL_API bcp_collen(HDBC,DBINT,INT); | 
|  | RETCODE SQL_API bcp_colptr(HDBC,LPCBYTE,INT); | 
|  | RETCODE SQL_API bcp_columns(HDBC,INT); | 
|  | RETCODE SQL_API bcp_control(HDBC,INT,void *); | 
|  | DBINT SQL_API bcp_done(HDBC); | 
|  | RETCODE SQL_API bcp_exec(HDBC,LPDBINT); | 
|  | RETCODE SQL_API bcp_getcolfmt(HDBC,INT,INT,void *,INT,INT *); | 
|  | RETCODE SQL_API bcp_initA(HDBC,LPCSTR,LPCSTR,LPCSTR,INT); | 
|  | RETCODE SQL_API bcp_initW(HDBC,LPCWSTR,LPCWSTR,LPCWSTR,INT); | 
|  | RETCODE SQL_API bcp_moretext(HDBC,DBINT,LPCBYTE); | 
|  | RETCODE SQL_API bcp_readfmtA(HDBC,LPCSTR); | 
|  | RETCODE SQL_API bcp_readfmtW(HDBC,LPCWSTR); | 
|  | RETCODE SQL_API bcp_sendrow(HDBC); | 
|  | RETCODE SQL_API bcp_setcolfmt(HDBC,INT,INT,void *,INT); | 
|  | RETCODE SQL_API bcp_writefmtA(HDBC,LPCSTR); | 
|  | RETCODE SQL_API bcp_writefmtW(HDBC,LPCWSTR); | 
|  | CHAR *SQL_API dbprtypeA(INT); | 
|  | WCHAR *SQL_API dbprtypeW(INT); | 
|  |  | 
|  | #ifdef UNICODE | 
|  | #define bcp_init bcp_initW | 
|  | #define bcp_readfmt bcp_readfmtW | 
|  | #define bcp_writefmt bcp_writefmtW | 
|  | #define dbprtype dbprtypeW | 
|  | #define BCPHINTS BCPHINTSW | 
|  | #else | 
|  | #define bcp_init bcp_initA | 
|  | #define bcp_readfmt bcp_readfmtA | 
|  | #define bcp_writefmt bcp_writefmtA | 
|  | #define dbprtype dbprtypeA | 
|  | #define BCPHINTS BCPHINTSA | 
|  | #endif | 
|  |  | 
|  | SQLRETURN SQL_API SQLLinkedServers(SQLHSTMT); | 
|  | SQLRETURN SQL_API SQLLinkedCatalogsA(SQLHSTMT,LPCSTR,SWORD); | 
|  | SQLRETURN SQL_API SQLLinkedCatalogsW(SQLHSTMT,LPCWSTR,SWORD); | 
|  | HANDLE SQL_API SQLInitEnumServers(WCHAR *pwchServerName,WCHAR *pwchInstanceName); | 
|  | RETCODE SQL_API SQLGetNextEnumeration(HANDLE hEnumHandle,BYTE *prgEnumData,INT *piEnumLength); | 
|  | RETCODE SQL_API SQLCloseEnumServers(HANDLE hEnumHandle); | 
|  |  | 
|  | #ifdef UNICODE | 
|  | #define SQLLinkedCatalogs SQLLinkedCatalogsW | 
|  | #else | 
|  | #define SQLLinkedCatalogs SQLLinkedCatalogsA | 
|  | #endif | 
|  |  | 
|  | #define BCP_FMT_TYPE 0x01 | 
|  | #define BCP_FMT_INDICATOR_LEN 0x02 | 
|  | #define BCP_FMT_DATA_LEN 0x03 | 
|  | #define BCP_FMT_TERMINATOR 0x04 | 
|  | #define BCP_FMT_SERVER_COL 0x05 | 
|  | #define BCP_FMT_COLLATION 0x06 | 
|  | #define BCP_FMT_COLLATION_ID 0x07 | 
|  |  | 
|  | #define SQL_FAST_CONNECT (SQL_COPT_SS_BASE+0) | 
|  |  | 
|  | #define SQL_FC_OFF 0L | 
|  | #define SQL_FC_ON 1L | 
|  | #define SQL_FC_DEFAULT SQL_FC_OFF | 
|  | #define SQL_COPT_SS_ANSI_OEM (SQL_COPT_SS_BASE+6) | 
|  | #define SQL_AO_OFF 0L | 
|  | #define SQL_AO_ON 1L | 
|  | #define SQL_AO_DEFAULT SQL_AO_OFF | 
|  |  | 
|  | #define SQL_REMOTE_PWD SQL_COPT_SS_REMOTE_PWD | 
|  | #define SQL_USE_PROCEDURE_FOR_PREPARE SQL_COPT_SS_USE_PROC_FOR_PREP | 
|  | #define SQL_INTEGRATED_SECURITY SQL_COPT_SS_INTEGRATED_SECURITY | 
|  | #define SQL_PRESERVE_CURSORS SQL_COPT_SS_PRESERVE_CURSORS | 
|  | #define SQL_TEXTPTR_LOGGING SQL_SOPT_SS_TEXTPTR_LOGGING | 
|  | #define SQL_CA_SS_BASE_COLUMN_NAME SQL_DESC_BASE_COLUMN_NAME | 
|  | #define SQLDECIMALN 0x6a | 
|  | #define SQLNUMERICN 0x6c | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } | 
|  | #endif | 
|  | #endif |