Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef __SQL
      7 #define __SQL
      8 
      9 #ifndef ODBCVER
     10 #define ODBCVER 0x0351
     11 #endif
     12 
     13 #include <sqltypes.h>
     14 
     15 #ifdef __cplusplus
     16 extern "C" {
     17 #endif
     18 
     19 #define SQL_NULL_DATA (-1)
     20 #define SQL_DATA_AT_EXEC (-2)
     21 
     22 #define SQL_SUCCESS 0
     23 #define SQL_SUCCESS_WITH_INFO 1
     24 #if (ODBCVER >= 0x0300)
     25 #define SQL_NO_DATA 100
     26 #endif
     27 #define SQL_ERROR (-1)
     28 #define SQL_INVALID_HANDLE (-2)
     29 
     30 #define SQL_STILL_EXECUTING 2
     31 #define SQL_NEED_DATA 99
     32 
     33 #define SQL_SUCCEEDED(rc) (((rc)&(~1))==0)
     34 
     35 #define SQL_NTS (-3)
     36 #define SQL_NTSL (__MSABI_LONG(-3))
     37 
     38 #define SQL_MAX_MESSAGE_LENGTH 512
     39 
     40 #if (ODBCVER >= 0x0300)
     41 #define SQL_DATE_LEN 10
     42 #define SQL_TIME_LEN 8
     43 #define SQL_TIMESTAMP_LEN 19
     44 #endif
     45 
     46 #if (ODBCVER >= 0x0300)
     47 #define SQL_HANDLE_ENV 1
     48 #define SQL_HANDLE_DBC 2
     49 #define SQL_HANDLE_STMT 3
     50 #define SQL_HANDLE_DESC 4
     51 #endif
     52 
     53 #if (ODBCVER >= 0x0300)
     54 #define SQL_ATTR_OUTPUT_NTS 10001
     55 #endif
     56 
     57 #if (ODBCVER >= 0x0300)
     58 #define SQL_ATTR_AUTO_IPD 10001
     59 #define SQL_ATTR_METADATA_ID 10014
     60 #endif
     61 
     62 #if (ODBCVER >= 0x0300)
     63 #define SQL_ATTR_APP_ROW_DESC 10010
     64 #define SQL_ATTR_APP_PARAM_DESC 10011
     65 #define SQL_ATTR_IMP_ROW_DESC 10012
     66 #define SQL_ATTR_IMP_PARAM_DESC 10013
     67 #define SQL_ATTR_CURSOR_SCROLLABLE (-1)
     68 #define SQL_ATTR_CURSOR_SENSITIVITY (-2)
     69 #endif
     70 
     71 #if (ODBCVER >= 0x0300)
     72 #define SQL_NONSCROLLABLE 0
     73 #define SQL_SCROLLABLE 1
     74 #endif
     75 
     76 #if (ODBCVER >= 0x0300)
     77 #define SQL_DESC_COUNT 1001
     78 #define SQL_DESC_TYPE 1002
     79 #define SQL_DESC_LENGTH 1003
     80 #define SQL_DESC_OCTET_LENGTH_PTR 1004
     81 #define SQL_DESC_PRECISION 1005
     82 #define SQL_DESC_SCALE 1006
     83 #define SQL_DESC_DATETIME_INTERVAL_CODE 1007
     84 #define SQL_DESC_NULLABLE 1008
     85 #define SQL_DESC_INDICATOR_PTR 1009
     86 #define SQL_DESC_DATA_PTR 1010
     87 #define SQL_DESC_NAME 1011
     88 #define SQL_DESC_UNNAMED 1012
     89 #define SQL_DESC_OCTET_LENGTH 1013
     90 #define SQL_DESC_ALLOC_TYPE 1099
     91 #endif
     92 
     93 #if (ODBCVER >= 0x0300)
     94 #define SQL_DIAG_RETURNCODE 1
     95 #define SQL_DIAG_NUMBER 2
     96 #define SQL_DIAG_ROW_COUNT 3
     97 #define SQL_DIAG_SQLSTATE 4
     98 #define SQL_DIAG_NATIVE 5
     99 #define SQL_DIAG_MESSAGE_TEXT 6
    100 #define SQL_DIAG_DYNAMIC_FUNCTION 7
    101 #define SQL_DIAG_CLASS_ORIGIN 8
    102 #define SQL_DIAG_SUBCLASS_ORIGIN 9
    103 #define SQL_DIAG_CONNECTION_NAME 10
    104 #define SQL_DIAG_SERVER_NAME 11
    105 #define SQL_DIAG_DYNAMIC_FUNCTION_CODE 12
    106 #endif
    107 
    108 #if (ODBCVER >= 0x0300)
    109 #define SQL_DIAG_ALTER_DOMAIN 3
    110 #define SQL_DIAG_ALTER_TABLE 4
    111 #define SQL_DIAG_CALL 7
    112 #define SQL_DIAG_CREATE_ASSERTION 6
    113 #define SQL_DIAG_CREATE_CHARACTER_SET 8
    114 #define SQL_DIAG_CREATE_COLLATION 10
    115 #define SQL_DIAG_CREATE_DOMAIN 23
    116 #define SQL_DIAG_CREATE_INDEX (-1)
    117 #define SQL_DIAG_CREATE_SCHEMA 64
    118 #define SQL_DIAG_CREATE_TABLE 77
    119 #define SQL_DIAG_CREATE_TRANSLATION 79
    120 #define SQL_DIAG_CREATE_VIEW 84
    121 #define SQL_DIAG_DELETE_WHERE 19
    122 #define SQL_DIAG_DROP_ASSERTION 24
    123 #define SQL_DIAG_DROP_CHARACTER_SET 25
    124 #define SQL_DIAG_DROP_COLLATION 26
    125 #define SQL_DIAG_DROP_DOMAIN 27
    126 #define SQL_DIAG_DROP_INDEX (-2)
    127 #define SQL_DIAG_DROP_SCHEMA 31
    128 #define SQL_DIAG_DROP_TABLE 32
    129 #define SQL_DIAG_DROP_TRANSLATION 33
    130 #define SQL_DIAG_DROP_VIEW 36
    131 #define SQL_DIAG_DYNAMIC_DELETE_CURSOR 38
    132 #define SQL_DIAG_DYNAMIC_UPDATE_CURSOR 81
    133 #define SQL_DIAG_GRANT 48
    134 #define SQL_DIAG_INSERT 50
    135 #define SQL_DIAG_REVOKE 59
    136 #define SQL_DIAG_SELECT_CURSOR 85
    137 #define SQL_DIAG_UNKNOWN_STATEMENT 0
    138 #define SQL_DIAG_UPDATE_WHERE 82
    139 #endif
    140 
    141 #define SQL_UNKNOWN_TYPE 0
    142 #define SQL_CHAR 1
    143 #define SQL_NUMERIC 2
    144 #define SQL_DECIMAL 3
    145 #define SQL_INTEGER 4
    146 #define SQL_SMALLINT 5
    147 #define SQL_FLOAT 6
    148 #define SQL_REAL 7
    149 #define SQL_DOUBLE 8
    150 #if (ODBCVER >= 0x0300)
    151 #define SQL_DATETIME 9
    152 #endif
    153 #define SQL_VARCHAR 12
    154 
    155 #if (ODBCVER >= 0x0300)
    156 #define SQL_TYPE_DATE 91
    157 #define SQL_TYPE_TIME 92
    158 #define SQL_TYPE_TIMESTAMP 93
    159 #endif
    160 
    161 #if (ODBCVER >= 0x0300)
    162 #define SQL_UNSPECIFIED 0
    163 #define SQL_INSENSITIVE 1
    164 #define SQL_SENSITIVE 2
    165 #endif
    166 
    167 #define SQL_ALL_TYPES 0
    168 
    169 #if (ODBCVER >= 0x0300)
    170 #define SQL_DEFAULT 99
    171 #endif
    172 
    173 #if (ODBCVER >= 0x0300)
    174 #define SQL_ARD_TYPE (-99)
    175 #endif
    176 
    177 #if (ODBCVER >= 0x0300)
    178 #define SQL_CODE_DATE 1
    179 #define SQL_CODE_TIME 2
    180 #define SQL_CODE_TIMESTAMP 3
    181 #endif
    182 
    183 #if (ODBCVER >= 0x0300)
    184 #define SQL_FALSE 0
    185 #define SQL_TRUE 1
    186 #endif
    187 
    188 #define SQL_NO_NULLS 0
    189 #define SQL_NULLABLE 1
    190 
    191 #define SQL_NULLABLE_UNKNOWN 2
    192 
    193 #if (ODBCVER >= 0x0300)
    194 #define SQL_PRED_NONE 0
    195 #define SQL_PRED_CHAR 1
    196 #define SQL_PRED_BASIC 2
    197 #endif
    198 
    199 #if (ODBCVER >= 0x0300)
    200 #define SQL_NAMED 0
    201 #define SQL_UNNAMED 1
    202 #endif
    203 
    204 #if (ODBCVER >= 0x0300)
    205 #define SQL_DESC_ALLOC_AUTO 1
    206 #define SQL_DESC_ALLOC_USER 2
    207 #endif
    208 
    209 #define SQL_CLOSE 0
    210 #define SQL_DROP 1
    211 #define SQL_UNBIND 2
    212 #define SQL_RESET_PARAMS 3
    213 
    214 #define SQL_FETCH_NEXT 1
    215 #define SQL_FETCH_FIRST 2
    216 
    217 #define SQL_FETCH_LAST 3
    218 #define SQL_FETCH_PRIOR 4
    219 #define SQL_FETCH_ABSOLUTE 5
    220 #define SQL_FETCH_RELATIVE 6
    221 
    222 #define SQL_COMMIT 0
    223 #define SQL_ROLLBACK 1
    224 
    225 #define SQL_NULL_HENV 0
    226 #define SQL_NULL_HDBC 0
    227 #define SQL_NULL_HSTMT 0
    228 #if (ODBCVER >= 0x0300)
    229 #define SQL_NULL_HDESC 0
    230 #endif
    231 
    232 #if (ODBCVER >= 0x0300)
    233 #define SQL_NULL_HANDLE __MSABI_LONG(0)
    234 #endif
    235 
    236 #define SQL_SCOPE_CURROW 0
    237 #define SQL_SCOPE_TRANSACTION 1
    238 #define SQL_SCOPE_SESSION 2
    239 
    240 #define SQL_PC_UNKNOWN 0
    241 #if (ODBCVER >= 0x0300)
    242 #define SQL_PC_NON_PSEUDO 1
    243 #endif
    244 #define SQL_PC_PSEUDO 2
    245 
    246 #if (ODBCVER >= 0x0300)
    247 #define SQL_ROW_IDENTIFIER 1
    248 #endif
    249 
    250 #define SQL_INDEX_UNIQUE 0
    251 #define SQL_INDEX_ALL 1
    252 
    253 #define SQL_INDEX_CLUSTERED 1
    254 #define SQL_INDEX_HASHED 2
    255 #define SQL_INDEX_OTHER 3
    256 
    257 #define SQL_API_SQLALLOCCONNECT 1
    258 #define SQL_API_SQLALLOCENV 2
    259 #if (ODBCVER >= 0x0300)
    260 #define SQL_API_SQLALLOCHANDLE 1001
    261 #endif
    262 #define SQL_API_SQLALLOCSTMT 3
    263 #define SQL_API_SQLBINDCOL 4
    264 #if (ODBCVER >= 0x0300)
    265 #define SQL_API_SQLBINDPARAM 1002
    266 #endif
    267 #define SQL_API_SQLCANCEL 5
    268 #if (ODBCVER >= 0x0300)
    269 #define SQL_API_SQLCLOSECURSOR 1003
    270 #define SQL_API_SQLCOLATTRIBUTE 6
    271 #endif
    272 #define SQL_API_SQLCOLUMNS 40
    273 #define SQL_API_SQLCONNECT 7
    274 #if (ODBCVER >= 0x0300)
    275 #define SQL_API_SQLCOPYDESC 1004
    276 #endif
    277 #define SQL_API_SQLDATASOURCES 57
    278 #define SQL_API_SQLDESCRIBECOL 8
    279 #define SQL_API_SQLDISCONNECT 9
    280 #if (ODBCVER >= 0x0300)
    281 #define SQL_API_SQLENDTRAN 1005
    282 #endif
    283 #define SQL_API_SQLERROR 10
    284 #define SQL_API_SQLEXECDIRECT 11
    285 #define SQL_API_SQLEXECUTE 12
    286 #define SQL_API_SQLFETCH 13
    287 #if (ODBCVER >= 0x0300)
    288 #define SQL_API_SQLFETCHSCROLL 1021
    289 #endif
    290 #define SQL_API_SQLFREECONNECT 14
    291 #define SQL_API_SQLFREEENV 15
    292 #if (ODBCVER >= 0x0300)
    293 #define SQL_API_SQLFREEHANDLE 1006
    294 #endif
    295 #define SQL_API_SQLFREESTMT 16
    296 #if (ODBCVER >= 0x0300)
    297 #define SQL_API_SQLGETCONNECTATTR 1007
    298 #endif
    299 #define SQL_API_SQLGETCONNECTOPTION 42
    300 #define SQL_API_SQLGETCURSORNAME 17
    301 #define SQL_API_SQLGETDATA 43
    302 #if (ODBCVER >= 0x0300)
    303 #define SQL_API_SQLGETDESCFIELD 1008
    304 #define SQL_API_SQLGETDESCREC 1009
    305 #define SQL_API_SQLGETDIAGFIELD 1010
    306 #define SQL_API_SQLGETDIAGREC 1011
    307 #define SQL_API_SQLGETENVATTR 1012
    308 #endif
    309 #define SQL_API_SQLGETFUNCTIONS 44
    310 #define SQL_API_SQLGETINFO 45
    311 #if (ODBCVER >= 0x0300)
    312 #define SQL_API_SQLGETSTMTATTR 1014
    313 #endif
    314 #define SQL_API_SQLGETSTMTOPTION 46
    315 #define SQL_API_SQLGETTYPEINFO 47
    316 #define SQL_API_SQLNUMRESULTCOLS 18
    317 #define SQL_API_SQLPARAMDATA 48
    318 #define SQL_API_SQLPREPARE 19
    319 #define SQL_API_SQLPUTDATA 49
    320 #define SQL_API_SQLROWCOUNT 20
    321 #if (ODBCVER >= 0x0300)
    322 #define SQL_API_SQLSETCONNECTATTR 1016
    323 #endif
    324 #define SQL_API_SQLSETCONNECTOPTION 50
    325 #define SQL_API_SQLSETCURSORNAME 21
    326 #if (ODBCVER >= 0x0300)
    327 #define SQL_API_SQLSETDESCFIELD 1017
    328 #define SQL_API_SQLSETDESCREC 1018
    329 #define SQL_API_SQLSETENVATTR 1019
    330 #endif
    331 #define SQL_API_SQLSETPARAM 22
    332 #if (ODBCVER >= 0x0300)
    333 #define SQL_API_SQLSETSTMTATTR 1020
    334 #endif
    335 #define SQL_API_SQLSETSTMTOPTION 51
    336 #define SQL_API_SQLSPECIALCOLUMNS 52
    337 #define SQL_API_SQLSTATISTICS 53
    338 #define SQL_API_SQLTABLES 54
    339 #define SQL_API_SQLTRANSACT 23
    340 
    341 #if (ODBCVER >= 0x0300)
    342 #define SQL_MAX_DRIVER_CONNECTIONS 0
    343 #define SQL_MAXIMUM_DRIVER_CONNECTIONS SQL_MAX_DRIVER_CONNECTIONS
    344 #define SQL_MAX_CONCURRENT_ACTIVITIES 1
    345 #define SQL_MAXIMUM_CONCURRENT_ACTIVITIES SQL_MAX_CONCURRENT_ACTIVITIES
    346 #endif
    347 #define SQL_DATA_SOURCE_NAME 2
    348 #define SQL_FETCH_DIRECTION 8
    349 #define SQL_SERVER_NAME 13
    350 #define SQL_SEARCH_PATTERN_ESCAPE 14
    351 #define SQL_DBMS_NAME 17
    352 #define SQL_DBMS_VER 18
    353 #define SQL_ACCESSIBLE_TABLES 19
    354 #define SQL_ACCESSIBLE_PROCEDURES 20
    355 #define SQL_CURSOR_COMMIT_BEHAVIOR 23
    356 #define SQL_DATA_SOURCE_READ_ONLY 25
    357 #define SQL_DEFAULT_TXN_ISOLATION 26
    358 #define SQL_IDENTIFIER_CASE 28
    359 #define SQL_IDENTIFIER_QUOTE_CHAR 29
    360 #define SQL_MAX_COLUMN_NAME_LEN 30
    361 #define SQL_MAXIMUM_COLUMN_NAME_LENGTH SQL_MAX_COLUMN_NAME_LEN
    362 #define SQL_MAX_CURSOR_NAME_LEN 31
    363 #define SQL_MAXIMUM_CURSOR_NAME_LENGTH SQL_MAX_CURSOR_NAME_LEN
    364 #define SQL_MAX_SCHEMA_NAME_LEN 32
    365 #define SQL_MAXIMUM_SCHEMA_NAME_LENGTH SQL_MAX_SCHEMA_NAME_LEN
    366 #define SQL_MAX_CATALOG_NAME_LEN 34
    367 #define SQL_MAXIMUM_CATALOG_NAME_LENGTH SQL_MAX_CATALOG_NAME_LEN
    368 #define SQL_MAX_TABLE_NAME_LEN 35
    369 #define SQL_SCROLL_CONCURRENCY 43
    370 #define SQL_TXN_CAPABLE 46
    371 #define SQL_TRANSACTION_CAPABLE SQL_TXN_CAPABLE
    372 #define SQL_USER_NAME 47
    373 #define SQL_TXN_ISOLATION_OPTION 72
    374 #define SQL_TRANSACTION_ISOLATION_OPTION SQL_TXN_ISOLATION_OPTION
    375 #define SQL_INTEGRITY 73
    376 #define SQL_GETDATA_EXTENSIONS 81
    377 #define SQL_NULL_COLLATION 85
    378 #define SQL_ALTER_TABLE 86
    379 #define SQL_ORDER_BY_COLUMNS_IN_SELECT 90
    380 #define SQL_SPECIAL_CHARACTERS 94
    381 #define SQL_MAX_COLUMNS_IN_GROUP_BY 97
    382 #define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY SQL_MAX_COLUMNS_IN_GROUP_BY
    383 #define SQL_MAX_COLUMNS_IN_INDEX 98
    384 #define SQL_MAXIMUM_COLUMNS_IN_INDEX SQL_MAX_COLUMNS_IN_INDEX
    385 #define SQL_MAX_COLUMNS_IN_ORDER_BY 99
    386 #define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY SQL_MAX_COLUMNS_IN_ORDER_BY
    387 #define SQL_MAX_COLUMNS_IN_SELECT 100
    388 #define SQL_MAXIMUM_COLUMNS_IN_SELECT SQL_MAX_COLUMNS_IN_SELECT
    389 #define SQL_MAX_COLUMNS_IN_TABLE 101
    390 #define SQL_MAX_INDEX_SIZE 102
    391 #define SQL_MAXIMUM_INDEX_SIZE SQL_MAX_INDEX_SIZE
    392 #define SQL_MAX_ROW_SIZE 104
    393 #define SQL_MAXIMUM_ROW_SIZE SQL_MAX_ROW_SIZE
    394 #define SQL_MAX_STATEMENT_LEN 105
    395 #define SQL_MAXIMUM_STATEMENT_LENGTH SQL_MAX_STATEMENT_LEN
    396 #define SQL_MAX_TABLES_IN_SELECT 106
    397 #define SQL_MAXIMUM_TABLES_IN_SELECT SQL_MAX_TABLES_IN_SELECT
    398 #define SQL_MAX_USER_NAME_LEN 107
    399 #define SQL_MAXIMUM_USER_NAME_LENGTH SQL_MAX_USER_NAME_LEN
    400 #if (ODBCVER >= 0x0300)
    401 #define SQL_OJ_CAPABILITIES 115
    402 #define SQL_OUTER_JOIN_CAPABILITIES SQL_OJ_CAPABILITIES
    403 #endif
    404 
    405 #if (ODBCVER >= 0x0300)
    406 #define SQL_XOPEN_CLI_YEAR 10000
    407 #define SQL_CURSOR_SENSITIVITY 10001
    408 #define SQL_DESCRIBE_PARAMETER 10002
    409 #define SQL_CATALOG_NAME 10003
    410 #define SQL_COLLATION_SEQ 10004
    411 #define SQL_MAX_IDENTIFIER_LEN 10005
    412 #define SQL_MAXIMUM_IDENTIFIER_LENGTH SQL_MAX_IDENTIFIER_LEN
    413 #endif
    414 
    415 #if (ODBCVER >= 0x0200)
    416 #define SQL_AT_ADD_COLUMN __MSABI_LONG(0x00000001)
    417 #define SQL_AT_DROP_COLUMN __MSABI_LONG(0x00000002)
    418 #endif
    419 
    420 #if (ODBCVER >= 0x0300)
    421 #define SQL_AT_ADD_CONSTRAINT __MSABI_LONG(0x00000008)
    422 #endif
    423 
    424 #if (ODBCVER >= 0x0300)
    425 #define SQL_AM_NONE 0
    426 #define SQL_AM_CONNECTION 1
    427 #define SQL_AM_STATEMENT 2
    428 #endif
    429 
    430 #define SQL_CB_DELETE 0
    431 #define SQL_CB_CLOSE 1
    432 #define SQL_CB_PRESERVE 2
    433 
    434 #define SQL_FD_FETCH_NEXT __MSABI_LONG(0x00000001)
    435 #define SQL_FD_FETCH_FIRST __MSABI_LONG(0x00000002)
    436 #define SQL_FD_FETCH_LAST __MSABI_LONG(0x00000004)
    437 #define SQL_FD_FETCH_PRIOR __MSABI_LONG(0x00000008)
    438 #define SQL_FD_FETCH_ABSOLUTE __MSABI_LONG(0x00000010)
    439 #define SQL_FD_FETCH_RELATIVE __MSABI_LONG(0x00000020)
    440 
    441 #define SQL_GD_ANY_COLUMN __MSABI_LONG(0x00000001)
    442 #define SQL_GD_ANY_ORDER __MSABI_LONG(0x00000002)
    443 
    444 #define SQL_IC_UPPER 1
    445 #define SQL_IC_LOWER 2
    446 #define SQL_IC_SENSITIVE 3
    447 #define SQL_IC_MIXED 4
    448 
    449 #if (ODBCVER >= 0x0201)
    450 #define SQL_OJ_LEFT __MSABI_LONG(0x00000001)
    451 #define SQL_OJ_RIGHT __MSABI_LONG(0x00000002)
    452 #define SQL_OJ_FULL __MSABI_LONG(0x00000004)
    453 #define SQL_OJ_NESTED __MSABI_LONG(0x00000008)
    454 #define SQL_OJ_NOT_ORDERED __MSABI_LONG(0x00000010)
    455 #define SQL_OJ_INNER __MSABI_LONG(0x00000020)
    456 #define SQL_OJ_ALL_COMPARISON_OPS __MSABI_LONG(0x00000040)
    457 #endif
    458 
    459 #define SQL_SCCO_READ_ONLY __MSABI_LONG(0x00000001)
    460 #define SQL_SCCO_LOCK __MSABI_LONG(0x00000002)
    461 #define SQL_SCCO_OPT_ROWVER __MSABI_LONG(0x00000004)
    462 #define SQL_SCCO_OPT_VALUES __MSABI_LONG(0x00000008)
    463 
    464 #define SQL_TC_NONE 0
    465 #define SQL_TC_DML 1
    466 #define SQL_TC_ALL 2
    467 #define SQL_TC_DDL_COMMIT 3
    468 #define SQL_TC_DDL_IGNORE 4
    469 
    470 #define SQL_TXN_READ_UNCOMMITTED __MSABI_LONG(0x00000001)
    471 #define SQL_TRANSACTION_READ_UNCOMMITTED SQL_TXN_READ_UNCOMMITTED
    472 #define SQL_TXN_READ_COMMITTED __MSABI_LONG(0x00000002)
    473 #define SQL_TRANSACTION_READ_COMMITTED SQL_TXN_READ_COMMITTED
    474 #define SQL_TXN_REPEATABLE_READ __MSABI_LONG(0x00000004)
    475 #define SQL_TRANSACTION_REPEATABLE_READ SQL_TXN_REPEATABLE_READ
    476 #define SQL_TXN_SERIALIZABLE __MSABI_LONG(0x00000008)
    477 #define SQL_TRANSACTION_SERIALIZABLE SQL_TXN_SERIALIZABLE
    478 
    479 #define SQL_NC_HIGH 0
    480 #define SQL_NC_LOW 1
    481 
    482 #ifndef RC_INVOKED
    483   SQLRETURN SQL_API SQLAllocConnect(SQLHENV EnvironmentHandle,SQLHDBC *ConnectionHandle);
    484   SQLRETURN SQL_API SQLAllocEnv(SQLHENV *EnvironmentHandle);
    485 #if (ODBCVER >= 0x0300)
    486   SQLRETURN SQL_API SQLAllocHandle(SQLSMALLINT HandleType,SQLHANDLE InputHandle,SQLHANDLE *OutputHandle);
    487 #endif
    488   SQLRETURN SQL_API SQLAllocStmt(SQLHDBC ConnectionHandle,SQLHSTMT *StatementHandle);
    489   SQLRETURN SQL_API SQLBindCol(SQLHSTMT StatementHandle,SQLUSMALLINT ColumnNumber,SQLSMALLINT TargetType,SQLPOINTER TargetValue,SQLLEN BufferLength,SQLLEN *StrLen_or_Ind);
    490 #if (ODBCVER >= 0x0300)
    491   SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle,SQLUSMALLINT ParameterNumber,SQLSMALLINT ValueType,SQLSMALLINT ParameterType,SQLULEN LengthPrecision,SQLSMALLINT ParameterScale,SQLPOINTER ParameterValue,SQLLEN *StrLen_or_Ind);
    492 #endif
    493   SQLRETURN SQL_API SQLCancel(SQLHSTMT StatementHandle);
    494 #if (ODBCVER >= 0x0300)
    495   SQLRETURN SQL_API SQLCloseCursor(SQLHSTMT StatementHandle);
    496 #ifdef _WIN64
    497   SQLRETURN SQL_API SQLColAttribute(SQLHSTMT StatementHandle,SQLUSMALLINT ColumnNumber,SQLUSMALLINT FieldIdentifier,SQLPOINTER CharacterAttribute,SQLSMALLINT BufferLength,SQLSMALLINT *StringLength,SQLLEN *NumericAttribute);
    498 #else
    499   SQLRETURN SQL_API SQLColAttribute(SQLHSTMT StatementHandle,SQLUSMALLINT ColumnNumber,SQLUSMALLINT FieldIdentifier,SQLPOINTER CharacterAttribute,SQLSMALLINT BufferLength,SQLSMALLINT *StringLength,SQLPOINTER NumericAttribute);
    500 #endif
    501 #endif
    502   SQLRETURN SQL_API SQLColumns(SQLHSTMT StatementHandle,SQLCHAR *CatalogName,SQLSMALLINT NameLength1,SQLCHAR *SchemaName,SQLSMALLINT NameLength2,SQLCHAR *TableName,SQLSMALLINT NameLength3,SQLCHAR *ColumnName,SQLSMALLINT NameLength4);
    503   SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle,SQLCHAR *ServerName,SQLSMALLINT NameLength1,SQLCHAR *UserName,SQLSMALLINT NameLength2,SQLCHAR *Authentication,SQLSMALLINT NameLength3);
    504 #if (ODBCVER >= 0x0300)
    505   SQLRETURN SQL_API SQLCopyDesc(SQLHDESC SourceDescHandle,SQLHDESC TargetDescHandle);
    506 #endif
    507   SQLRETURN SQL_API SQLDataSources(SQLHENV EnvironmentHandle,SQLUSMALLINT Direction,SQLCHAR *ServerName,SQLSMALLINT BufferLength1,SQLSMALLINT *NameLength1,SQLCHAR *Description,SQLSMALLINT BufferLength2,SQLSMALLINT *NameLength2);
    508   SQLRETURN SQL_API SQLDescribeCol(SQLHSTMT StatementHandle,SQLUSMALLINT ColumnNumber,SQLCHAR *ColumnName,SQLSMALLINT BufferLength,SQLSMALLINT *NameLength,SQLSMALLINT *DataType,SQLULEN *ColumnSize,SQLSMALLINT *DecimalDigits,SQLSMALLINT *Nullable);
    509   SQLRETURN SQL_API SQLDisconnect(SQLHDBC ConnectionHandle);
    510 #if (ODBCVER >= 0x0300)
    511   SQLRETURN SQL_API SQLEndTran(SQLSMALLINT HandleType,SQLHANDLE Handle,SQLSMALLINT CompletionType);
    512 #endif
    513   SQLRETURN SQL_API SQLError(SQLHENV EnvironmentHandle,SQLHDBC ConnectionHandle,SQLHSTMT StatementHandle,SQLCHAR *Sqlstate,SQLINTEGER *NativeError,SQLCHAR *MessageText,SQLSMALLINT BufferLength,SQLSMALLINT *TextLength);
    514   SQLRETURN SQL_API SQLExecDirect(SQLHSTMT StatementHandle,SQLCHAR *StatementText,SQLINTEGER TextLength);
    515   SQLRETURN SQL_API SQLExecute(SQLHSTMT StatementHandle);
    516   SQLRETURN SQL_API SQLFetch(SQLHSTMT StatementHandle);
    517 #if (ODBCVER >= 0x0300)
    518   SQLRETURN SQL_API SQLFetchScroll(SQLHSTMT StatementHandle,SQLSMALLINT FetchOrientation,SQLLEN FetchOffset);
    519 #endif
    520   SQLRETURN SQL_API SQLFreeConnect(SQLHDBC ConnectionHandle);
    521   SQLRETURN SQL_API SQLFreeEnv(SQLHENV EnvironmentHandle);
    522 #if (ODBCVER >= 0x0300)
    523   SQLRETURN SQL_API SQLFreeHandle(SQLSMALLINT HandleType,SQLHANDLE Handle);
    524 #endif
    525   SQLRETURN SQL_API SQLFreeStmt(SQLHSTMT StatementHandle,SQLUSMALLINT Option);
    526 #if (ODBCVER >= 0x0300)
    527   SQLRETURN SQL_API SQLGetConnectAttr(SQLHDBC ConnectionHandle,SQLINTEGER Attribute,SQLPOINTER Value,SQLINTEGER BufferLength,SQLINTEGER *StringLength);
    528 #endif
    529   SQLRETURN SQL_API SQLGetConnectOption(SQLHDBC ConnectionHandle,SQLUSMALLINT Option,SQLPOINTER Value);
    530   SQLRETURN SQL_API SQLGetCursorName(SQLHSTMT StatementHandle,SQLCHAR *CursorName,SQLSMALLINT BufferLength,SQLSMALLINT *NameLength);
    531   SQLRETURN SQL_API SQLGetData(SQLHSTMT StatementHandle,SQLUSMALLINT ColumnNumber,SQLSMALLINT TargetType,SQLPOINTER TargetValue,SQLLEN BufferLength,SQLLEN *StrLen_or_Ind);
    532 #if (ODBCVER >= 0x0300)
    533   SQLRETURN SQL_API SQLGetDescField(SQLHDESC DescriptorHandle,SQLSMALLINT RecNumber,SQLSMALLINT FieldIdentifier,SQLPOINTER Value,SQLINTEGER BufferLength,SQLINTEGER *StringLength);
    534   SQLRETURN SQL_API SQLGetDescRec(SQLHDESC DescriptorHandle,SQLSMALLINT RecNumber,SQLCHAR *Name,SQLSMALLINT BufferLength,SQLSMALLINT *StringLength,SQLSMALLINT *Type,SQLSMALLINT *SubType,SQLLEN *Length,SQLSMALLINT *Precision,SQLSMALLINT *Scale,SQLSMALLINT *Nullable);
    535   SQLRETURN SQL_API SQLGetDiagField(SQLSMALLINT HandleType,SQLHANDLE Handle,SQLSMALLINT RecNumber,SQLSMALLINT DiagIdentifier,SQLPOINTER DiagInfo,SQLSMALLINT BufferLength,SQLSMALLINT *StringLength);
    536   SQLRETURN SQL_API SQLGetDiagRec(SQLSMALLINT HandleType,SQLHANDLE Handle,SQLSMALLINT RecNumber,SQLCHAR *Sqlstate,SQLINTEGER *NativeError,SQLCHAR *MessageText,SQLSMALLINT BufferLength,SQLSMALLINT *TextLength);
    537   SQLRETURN SQL_API SQLGetEnvAttr(SQLHENV EnvironmentHandle,SQLINTEGER Attribute,SQLPOINTER Value,SQLINTEGER BufferLength,SQLINTEGER *StringLength);
    538 #endif
    539   SQLRETURN SQL_API SQLGetFunctions(SQLHDBC ConnectionHandle,SQLUSMALLINT FunctionId,SQLUSMALLINT *Supported);
    540   SQLRETURN SQL_API SQLGetInfo(SQLHDBC ConnectionHandle,SQLUSMALLINT InfoType,SQLPOINTER InfoValue,SQLSMALLINT BufferLength,SQLSMALLINT *StringLength);
    541 #if (ODBCVER >= 0x0300)
    542   SQLRETURN SQL_API SQLGetStmtAttr(SQLHSTMT StatementHandle,SQLINTEGER Attribute,SQLPOINTER Value,SQLINTEGER BufferLength,SQLINTEGER *StringLength);
    543 #endif
    544   SQLRETURN SQL_API SQLGetStmtOption(SQLHSTMT StatementHandle,SQLUSMALLINT Option,SQLPOINTER Value);
    545   SQLRETURN SQL_API SQLGetTypeInfo(SQLHSTMT StatementHandle,SQLSMALLINT DataType);
    546   SQLRETURN SQL_API SQLNumResultCols(SQLHSTMT StatementHandle,SQLSMALLINT *ColumnCount);
    547   SQLRETURN SQL_API SQLParamData(SQLHSTMT StatementHandle,SQLPOINTER *Value);
    548   SQLRETURN SQL_API SQLPrepare(SQLHSTMT StatementHandle,SQLCHAR *StatementText,SQLINTEGER TextLength);
    549   SQLRETURN SQL_API SQLPutData(SQLHSTMT StatementHandle,SQLPOINTER Data,SQLLEN StrLen_or_Ind);
    550   SQLRETURN SQL_API SQLRowCount(SQLHSTMT StatementHandle,SQLLEN *RowCount);
    551 #if (ODBCVER >= 0x0300)
    552   SQLRETURN SQL_API SQLSetConnectAttr(SQLHDBC ConnectionHandle,SQLINTEGER Attribute,SQLPOINTER Value,SQLINTEGER StringLength);
    553 #endif
    554   SQLRETURN SQL_API SQLSetConnectOption(SQLHDBC ConnectionHandle,SQLUSMALLINT Option,SQLULEN Value);
    555   SQLRETURN SQL_API SQLSetCursorName(SQLHSTMT StatementHandle,SQLCHAR *CursorName,SQLSMALLINT NameLength);
    556 #if (ODBCVER >= 0x0300)
    557   SQLRETURN SQL_API SQLSetDescField(SQLHDESC DescriptorHandle,SQLSMALLINT RecNumber,SQLSMALLINT FieldIdentifier,SQLPOINTER Value,SQLINTEGER BufferLength);
    558   SQLRETURN SQL_API SQLSetDescRec(SQLHDESC DescriptorHandle,SQLSMALLINT RecNumber,SQLSMALLINT Type,SQLSMALLINT SubType,SQLLEN Length,SQLSMALLINT Precision,SQLSMALLINT Scale,SQLPOINTER Data,SQLLEN *StringLength,SQLLEN *Indicator);
    559   SQLRETURN SQL_API SQLSetEnvAttr(SQLHENV EnvironmentHandle,SQLINTEGER Attribute,SQLPOINTER Value,SQLINTEGER StringLength);
    560 #endif
    561   SQLRETURN SQL_API SQLSetParam(SQLHSTMT StatementHandle,SQLUSMALLINT ParameterNumber,SQLSMALLINT ValueType,SQLSMALLINT ParameterType,SQLULEN LengthPrecision,SQLSMALLINT ParameterScale,SQLPOINTER ParameterValue,SQLLEN *StrLen_or_Ind);
    562 #if (ODBCVER >= 0x0300)
    563   SQLRETURN SQL_API SQLSetStmtAttr(SQLHSTMT StatementHandle,SQLINTEGER Attribute,SQLPOINTER Value,SQLINTEGER StringLength);
    564 #endif
    565   SQLRETURN SQL_API SQLSetStmtOption(SQLHSTMT StatementHandle,SQLUSMALLINT Option,SQLULEN Value);
    566   SQLRETURN SQL_API SQLSpecialColumns(SQLHSTMT StatementHandle,SQLUSMALLINT IdentifierType,SQLCHAR *CatalogName,SQLSMALLINT NameLength1,SQLCHAR *SchemaName,SQLSMALLINT NameLength2,SQLCHAR *TableName,SQLSMALLINT NameLength3,SQLUSMALLINT Scope,SQLUSMALLINT Nullable);
    567   SQLRETURN SQL_API SQLStatistics(SQLHSTMT StatementHandle,SQLCHAR *CatalogName,SQLSMALLINT NameLength1,SQLCHAR *SchemaName,SQLSMALLINT NameLength2,SQLCHAR *TableName,SQLSMALLINT NameLength3,SQLUSMALLINT Unique,SQLUSMALLINT Reserved);
    568   SQLRETURN SQL_API SQLTables(SQLHSTMT StatementHandle,SQLCHAR *CatalogName,SQLSMALLINT NameLength1,SQLCHAR *SchemaName,SQLSMALLINT NameLength2,SQLCHAR *TableName,SQLSMALLINT NameLength3,SQLCHAR *TableType,SQLSMALLINT NameLength4);
    569   SQLRETURN SQL_API SQLTransact(SQLHENV EnvironmentHandle,SQLHDBC ConnectionHandle,SQLUSMALLINT CompletionType);
    570 #endif
    571 
    572 #ifdef __cplusplus
    573 }
    574 #endif
    575 #endif
    576