ibm_db 5.0.2 → 5.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/ibm_db.o +0 -0
- data/ext/ibm_db.so +0 -0
- data/ext/ruby_ibm_db_cli.o +0 -0
- data/lib/active_record/connection_adapters/ibm_db_adapter.rb +30 -2
- data/lib/clidriver.tar.gz +0 -0
- data/lib/clidriver/bin/db2cli +0 -0
- data/lib/clidriver/bin/db2diag +0 -0
- data/lib/clidriver/bin/db2drdat +0 -0
- data/lib/clidriver/bin/db2dsdcfgfill +0 -0
- data/lib/clidriver/bin/db2ldcfg +0 -0
- data/lib/clidriver/bin/db2lddrg +0 -0
- data/lib/clidriver/bin/db2level +0 -0
- data/lib/clidriver/bin/db2support +0 -0
- data/lib/clidriver/bin/db2trc +0 -0
- data/lib/clidriver/bnd/db2ajgrt.bnd +0 -0
- data/lib/clidriver/bnd/db2cli.bnd +0 -0
- data/lib/clidriver/bnd/db2cli.lst +4 -0
- data/lib/clidriver/bnd/db2clipk.bnd +0 -0
- data/lib/clidriver/bnd/db2clist.bnd +0 -0
- data/lib/clidriver/bnd/db2spcdb.bnd +0 -0
- data/lib/clidriver/cfg/DigiCertGlobalRootCA.arm +22 -0
- data/lib/clidriver/cfg/db2cli.ini.sample +16 -0
- data/lib/clidriver/cfg/db2dsdriver.cfg.sample +50 -0
- data/lib/clidriver/cfg/db2dsdriver.xsd +216 -0
- data/lib/clidriver/cfgcache/conlic.bin +0 -0
- data/lib/clidriver/conv/alt/04370923.cnv +0 -0
- data/lib/clidriver/conv/alt/08500923.cnv +0 -0
- data/lib/clidriver/conv/alt/08501252.cnv +0 -0
- data/lib/clidriver/conv/alt/08600923.cnv +0 -0
- data/lib/clidriver/conv/alt/08630923.cnv +0 -0
- data/lib/clidriver/conv/alt/09230437.cnv +0 -0
- data/lib/clidriver/conv/alt/09230850.cnv +0 -0
- data/lib/clidriver/conv/alt/09230860.cnv +0 -0
- data/lib/clidriver/conv/alt/09231043.cnv +0 -0
- data/lib/clidriver/conv/alt/09231051.cnv +0 -0
- data/lib/clidriver/conv/alt/09231114.cnv +0 -0
- data/lib/clidriver/conv/alt/09231208.cnv +0 -0
- data/lib/clidriver/conv/alt/09231252.cnv +0 -0
- data/lib/clidriver/conv/alt/09231275.cnv +0 -0
- data/lib/clidriver/conv/alt/09241252.cnv +0 -0
- data/lib/clidriver/conv/alt/09370950.cnv +0 -0
- data/lib/clidriver/conv/alt/10430923.cnv +0 -0
- data/lib/clidriver/conv/alt/10510923.cnv +0 -0
- data/lib/clidriver/conv/alt/11140923.cnv +0 -0
- data/lib/clidriver/conv/alt/12080923.cnv +0 -0
- data/lib/clidriver/conv/alt/12520850.cnv +0 -0
- data/lib/clidriver/conv/alt/12520923.cnv +0 -0
- data/lib/clidriver/conv/alt/12750923.cnv +0 -0
- data/lib/clidriver/conv/alt/1388ucs2.cnv +0 -0
- data/lib/clidriver/conv/alt/IBM00850.ucs +0 -0
- data/lib/clidriver/conv/alt/IBM00923.ucs +0 -0
- data/lib/clidriver/conv/alt/IBM01252.ucs +0 -0
- data/lib/clidriver/conv/ms/0930ucs2.cnv +0 -0
- data/lib/clidriver/conv/ms/0939ucs2.cnv +0 -0
- data/lib/clidriver/conv/ms/0943ucs2.cnv +0 -0
- data/lib/clidriver/conv/ms/0954ucs2.cnv +0 -0
- data/lib/clidriver/conv/ms/1390ucs2.cnv +0 -0
- data/lib/clidriver/conv/ms/1399ucs2.cnv +0 -0
- data/lib/clidriver/conv/ms/5039ucs2.cnv +0 -0
- data/lib/clidriver/conv/ms/ucs20943.cnv +0 -0
- data/lib/clidriver/include/sql.h +3149 -0
- data/lib/clidriver/include/sqlca.h +119 -0
- data/lib/clidriver/include/sqlcli.h +1042 -0
- data/lib/clidriver/include/sqlcli1.h +1963 -0
- data/lib/clidriver/include/sqlda.h +303 -0
- data/lib/clidriver/include/sqlenv.h +7389 -0
- data/lib/clidriver/include/sqlext.h +2189 -0
- data/lib/clidriver/include/sqlstate.h +1397 -0
- data/lib/clidriver/include/sqlsystm.h +119 -0
- data/lib/clidriver/include/sqltypes.h +22 -0
- data/lib/clidriver/include/sqlucode.h +22 -0
- data/lib/clidriver/include/sqlunx.h +24 -0
- data/lib/clidriver/lib/icc/C/icc/icclib/ICCSIG.txt +23 -0
- data/lib/clidriver/lib/icc/C/icc/icclib/libicclib084.so +0 -0
- data/lib/clidriver/lib/icc/N/icc/icclib/ICCSIG.txt +23 -0
- data/lib/clidriver/lib/icc/N/icc/icclib/libicclib085.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8cms_64.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8dbfl_64.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8iccs_64.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8kicc_64.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8km_64.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8ssl_64.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8sys_64.so +0 -0
- data/lib/clidriver/lib/icc/libgsk8valn_64.so +0 -0
- data/lib/clidriver/lib/libDB2xml4c.so +1 -0
- data/lib/clidriver/lib/libDB2xml4c.so.58 +1 -0
- data/lib/clidriver/lib/libDB2xml4c.so.58.0 +0 -0
- data/lib/clidriver/lib/libdb2.so +1 -0
- data/lib/clidriver/lib/libdb2.so.1 +0 -0
- data/lib/clidriver/lib/libdb2clixml4c.so +1 -0
- data/lib/clidriver/lib/libdb2clixml4c.so.1 +0 -0
- data/lib/clidriver/license/UNIX/odbc_LI_cs +278 -0
- data/lib/clidriver/license/UNIX/odbc_LI_de +364 -0
- data/lib/clidriver/license/UNIX/odbc_LI_el +294 -0
- data/lib/clidriver/license/UNIX/odbc_LI_en +752 -0
- data/lib/clidriver/license/UNIX/odbc_LI_es +338 -0
- data/lib/clidriver/license/UNIX/odbc_LI_fr +396 -0
- data/lib/clidriver/license/UNIX/odbc_LI_in +270 -0
- data/lib/clidriver/license/UNIX/odbc_LI_it +316 -0
- data/lib/clidriver/license/UNIX/odbc_LI_ja +246 -0
- data/lib/clidriver/license/UNIX/odbc_LI_ko +240 -0
- data/lib/clidriver/license/UNIX/odbc_LI_lt +302 -0
- data/lib/clidriver/license/UNIX/odbc_LI_pl +292 -0
- data/lib/clidriver/license/UNIX/odbc_LI_pt +314 -0
- data/lib/clidriver/license/UNIX/odbc_LI_ru +296 -0
- data/lib/clidriver/license/UNIX/odbc_LI_sl +278 -0
- data/lib/clidriver/license/UNIX/odbc_LI_tr +296 -0
- data/lib/clidriver/license/UNIX/odbc_LI_zh +310 -0
- data/lib/clidriver/license/UNIX/odbc_LI_zh_TW +310 -0
- data/lib/clidriver/license/odbc_REDIST.txt +128 -0
- data/lib/clidriver/license/odbc_notices.txt +444 -0
- data/lib/clidriver/msg/en_US.iso88591/db2adm.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2admh.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2caem.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2cklog.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2cli.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2clia1.lst +35 -0
- data/lib/clidriver/msg/en_US.iso88591/db2clias.lst +21 -0
- data/lib/clidriver/msg/en_US.iso88591/db2clih.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2clit.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2clp.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2clp2.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2diag.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2fodc.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2sql.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2sqlh.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2stt.mo +0 -0
- data/lib/clidriver/msg/en_US.iso88591/db2supp.mo +0 -0
- data/lib/clidriver/security64/plugin/IBM/client/IBMIAMauth.so +0 -0
- data/lib/clidriver/security64/plugin/IBM/client/IBMkrb5.so +0 -0
- metadata +131 -2
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/******************************************************************************
|
|
2
|
+
*
|
|
3
|
+
* Source File Name = SQLCA.H
|
|
4
|
+
*
|
|
5
|
+
* (C) COPYRIGHT International Business Machines Corp. 1987, 1997
|
|
6
|
+
* All Rights Reserved
|
|
7
|
+
* Licensed Materials - Property of IBM
|
|
8
|
+
*
|
|
9
|
+
* US Government Users Restricted Rights - Use, duplication or
|
|
10
|
+
* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
|
11
|
+
*
|
|
12
|
+
* Function = Include File defining:
|
|
13
|
+
* SQL Communications Area
|
|
14
|
+
*
|
|
15
|
+
* Operating System = Common C Include File
|
|
16
|
+
*
|
|
17
|
+
*****************************************************************************/
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
#if !(defined(SQLCODE) || defined(SQLCADE)) /* Permit Duplicate Includes */
|
|
21
|
+
|
|
22
|
+
#include "sqlsystm.h" /* System dependent defines */
|
|
23
|
+
|
|
24
|
+
#if defined(DB2NT)
|
|
25
|
+
#if defined _WIN64
|
|
26
|
+
#pragma pack(8)
|
|
27
|
+
#else
|
|
28
|
+
#pragma pack(4)
|
|
29
|
+
#endif
|
|
30
|
+
#elif (defined(DB2AIX) && defined(__64BIT__))
|
|
31
|
+
#pragma options align=natural
|
|
32
|
+
#elif (defined(DB2AIX))
|
|
33
|
+
#pragma options align=power
|
|
34
|
+
#endif
|
|
35
|
+
|
|
36
|
+
/* SQL Communication Area - SQLCA */
|
|
37
|
+
/* _SQLOLDCHAR defaults to 'char'. See sqlsystm.h for details. */
|
|
38
|
+
|
|
39
|
+
SQL_STRUCTURE sqlca
|
|
40
|
+
{
|
|
41
|
+
_SQLOLDCHAR sqlcaid[8]; /* Eyecatcher = 'SQLCA ' */
|
|
42
|
+
sqlint32 sqlcabc; /* SQLCA size in bytes = 136 */
|
|
43
|
+
#ifdef DB2_SQL92E
|
|
44
|
+
sqlint32 sqlcade; /* SQL return code */
|
|
45
|
+
#else
|
|
46
|
+
sqlint32 sqlcode; /* SQL return code */
|
|
47
|
+
#endif
|
|
48
|
+
short sqlerrml; /* Length for SQLERRMC */
|
|
49
|
+
_SQLOLDCHAR sqlerrmc[70]; /* Error message tokens */
|
|
50
|
+
|
|
51
|
+
_SQLOLDCHAR sqlerrp[8]; /* Diagnostic information */
|
|
52
|
+
|
|
53
|
+
sqlint32 sqlerrd[6]; /* Diagnostic information */
|
|
54
|
+
_SQLOLDCHAR sqlwarn[11]; /* Warning flags */
|
|
55
|
+
|
|
56
|
+
#ifdef DB2_SQL92E
|
|
57
|
+
_SQLOLDCHAR sqlstat[5]; /* State corresponding to SQLCODE */
|
|
58
|
+
#else
|
|
59
|
+
_SQLOLDCHAR sqlstate[5]; /* State corresponding to SQLCODE */
|
|
60
|
+
#endif
|
|
61
|
+
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
#ifdef DB2_SQL92E
|
|
65
|
+
#define SQLCADE sqlca.sqlcade
|
|
66
|
+
#else
|
|
67
|
+
#define SQLCODE sqlca.sqlcode
|
|
68
|
+
#endif
|
|
69
|
+
#define SQLWARN0 sqlca.sqlwarn[0]
|
|
70
|
+
#define SQLWARN1 sqlca.sqlwarn[1]
|
|
71
|
+
#define SQLWARN2 sqlca.sqlwarn[2]
|
|
72
|
+
#define SQLWARN3 sqlca.sqlwarn[3]
|
|
73
|
+
#define SQLWARN4 sqlca.sqlwarn[4]
|
|
74
|
+
#define SQLWARN5 sqlca.sqlwarn[5]
|
|
75
|
+
#define SQLWARN6 sqlca.sqlwarn[6]
|
|
76
|
+
#define SQLWARN7 sqlca.sqlwarn[7]
|
|
77
|
+
#define SQLWARN8 sqlca.sqlwarn[8]
|
|
78
|
+
#define SQLWARN9 sqlca.sqlwarn[9]
|
|
79
|
+
#define SQLWARNA sqlca.sqlwarn[10]
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
/* sqlerrd tokens updated when compound SQL statements processed */
|
|
83
|
+
|
|
84
|
+
#define SQL_CMP_NA_ERRORS 1
|
|
85
|
+
#define SQL_CMP_ROWS_AFFECTED 2
|
|
86
|
+
#define SQL_CMP_STMTS_COMPLETED 3
|
|
87
|
+
#define SQL_CMP_REF_INT_ROWS 4
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
/* sqlerrd tokens updated when CONNECT statements processed */
|
|
91
|
+
|
|
92
|
+
#define SQL_CONNECT_DB_APP2DB_CONVFACTOR 0
|
|
93
|
+
#define SQL_CONNECT_DB_DB2APP_CONVFACTOR 1
|
|
94
|
+
#define SQL_CONNECT_DB_UPDATEABILITY_IN_UOW 2
|
|
95
|
+
#define SQL_CONNECT_DB_COMMIT_TYPE 3
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
/* Values returned for sqlerrd[SQL_CONNECT_DB_UPDATEABILITY_IN_UOW] */
|
|
99
|
+
|
|
100
|
+
#define SQL_DB_UPDATEABLE 1
|
|
101
|
+
#define SQL_DB_READ_ONLY 2
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
/* Values returned for sqlerrd[SQL_CONNECT_DB_COMMIT_TYPE] */
|
|
105
|
+
|
|
106
|
+
#define SQL_DB_ONE_PHASE_COMMIT 1
|
|
107
|
+
#define SQL_DB_ONE_PHASE_READ_ONLY 2
|
|
108
|
+
#define SQL_DB_TWO_PHASE_COMMIT 3
|
|
109
|
+
|
|
110
|
+
/* sqlerrd tokens updated when MPP statements processed */
|
|
111
|
+
#define SQL_ERRD_NODE_NUM 1
|
|
112
|
+
|
|
113
|
+
#if defined(DB2NT)
|
|
114
|
+
#pragma pack()
|
|
115
|
+
#elif defined(DB2AIX)
|
|
116
|
+
#pragma options align=reset
|
|
117
|
+
#endif
|
|
118
|
+
|
|
119
|
+
#endif /* SQLCODE */
|
|
@@ -0,0 +1,1042 @@
|
|
|
1
|
+
/******************************************************************************
|
|
2
|
+
*
|
|
3
|
+
* Source File Name = sqlcli.h
|
|
4
|
+
*
|
|
5
|
+
* (C) COPYRIGHT International Business Machines Corp. 1993, 2016
|
|
6
|
+
* All Rights Reserved
|
|
7
|
+
* Licensed Materials - Property of IBM
|
|
8
|
+
*
|
|
9
|
+
* US Government Users Restricted Rights - Use, duplication or
|
|
10
|
+
* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
|
11
|
+
*
|
|
12
|
+
* Function = Include File defining:
|
|
13
|
+
* DB2 CLI Interface - Constants
|
|
14
|
+
* DB2 CLI Interface - Data Structures
|
|
15
|
+
* DB2 CLI Interface - Function Prototypes
|
|
16
|
+
*
|
|
17
|
+
* Operating System = Common C Include File
|
|
18
|
+
*
|
|
19
|
+
*****************************************************************************/
|
|
20
|
+
|
|
21
|
+
#ifndef SQL_H_SQLCLI
|
|
22
|
+
#define SQL_H_SQLCLI /* Permit duplicate Includes */
|
|
23
|
+
|
|
24
|
+
/* Prevent inclusion of winsock.h in windows.h */
|
|
25
|
+
#ifndef _WINSOCKAPI_
|
|
26
|
+
#define _WINSOCKAPI_
|
|
27
|
+
#define DB2_WINSOCKAPI_
|
|
28
|
+
#endif
|
|
29
|
+
|
|
30
|
+
/* DB2CLI_VER DB2 Call Level Interface Version Number (0x0210).
|
|
31
|
+
* To revert to Version 1.0 definitions,
|
|
32
|
+
* issue #define DB2CLI_VER 0x0110 before including
|
|
33
|
+
* sqlcli.h and sqlcli1.h
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
/* If DB2CLI_VER is not defined, assume version 2.10 */
|
|
37
|
+
#ifndef DB2CLI_VER
|
|
38
|
+
#define DB2CLI_VER 0x0310
|
|
39
|
+
#endif
|
|
40
|
+
|
|
41
|
+
/* ODBC64 should be used instead of CLI_WIN64 for linking with libdb2o.dll */
|
|
42
|
+
#ifndef ODBC64
|
|
43
|
+
#ifdef CLI_WIN64
|
|
44
|
+
#define ODBC64
|
|
45
|
+
#endif
|
|
46
|
+
#endif
|
|
47
|
+
|
|
48
|
+
#include <stdlib.h>
|
|
49
|
+
|
|
50
|
+
#ifdef __cplusplus
|
|
51
|
+
extern "C" {
|
|
52
|
+
#endif
|
|
53
|
+
|
|
54
|
+
#include "sqlsystm.h" /* System dependent defines */
|
|
55
|
+
|
|
56
|
+
#if defined(DB2NT)
|
|
57
|
+
#include <windows.h>
|
|
58
|
+
#else
|
|
59
|
+
#define FAR
|
|
60
|
+
#endif
|
|
61
|
+
|
|
62
|
+
#define SQL_API SQL_API_FN
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
/* generally useful constants */
|
|
66
|
+
#define SQL_MAX_MESSAGE_LENGTH 1024 /* message buffer size */
|
|
67
|
+
#define SQL_MAX_ID_LENGTH 128 /* maximum identifier name size,
|
|
68
|
+
e.g. cursor names */
|
|
69
|
+
|
|
70
|
+
/* date/time length constants */
|
|
71
|
+
#define SQL_DATE_LEN 10
|
|
72
|
+
#define SQL_TIME_LEN 8 /* add P+1 if precision is nonzero */
|
|
73
|
+
#define SQL_TIMESTAMP_LEN 19 /* add P+1 if precision is nonzero */
|
|
74
|
+
#define SQL_TIMESTAMPTZ_LEN 25 /* add P+1 if precision is nonzero */
|
|
75
|
+
|
|
76
|
+
/* handle type identifiers */
|
|
77
|
+
#define SQL_HANDLE_ENV 1
|
|
78
|
+
#define SQL_HANDLE_DBC 2
|
|
79
|
+
#define SQL_HANDLE_STMT 3
|
|
80
|
+
#define SQL_HANDLE_DESC 4
|
|
81
|
+
|
|
82
|
+
/* RETCODE values */
|
|
83
|
+
#define SQL_SUCCESS 0
|
|
84
|
+
#define SQL_SUCCESS_WITH_INFO 1
|
|
85
|
+
#define SQL_NEED_DATA 99
|
|
86
|
+
#define SQL_NO_DATA 100
|
|
87
|
+
#define SQL_STILL_EXECUTING 2
|
|
88
|
+
#define SQL_ERROR -1
|
|
89
|
+
#define SQL_INVALID_HANDLE -2
|
|
90
|
+
|
|
91
|
+
/* test for SQL_SUCCESS or SQL_SUCCESS_WITH_INFO */
|
|
92
|
+
#define SQL_SUCCEEDED(rc) (((rc)&(~1))==0)
|
|
93
|
+
|
|
94
|
+
/* SQLFreeStmt option values */
|
|
95
|
+
#define SQL_CLOSE 0
|
|
96
|
+
#define SQL_DROP 1
|
|
97
|
+
#define SQL_UNBIND 2
|
|
98
|
+
#define SQL_RESET_PARAMS 3
|
|
99
|
+
|
|
100
|
+
/* SQLTransact option values */
|
|
101
|
+
#define SQL_COMMIT 0
|
|
102
|
+
#define SQL_ROLLBACK 1
|
|
103
|
+
|
|
104
|
+
/* Standard SQL data types */
|
|
105
|
+
#define SQL_UNKNOWN_TYPE 0
|
|
106
|
+
#define SQL_CHAR 1
|
|
107
|
+
#define SQL_NUMERIC 2
|
|
108
|
+
#define SQL_DECIMAL 3
|
|
109
|
+
#define SQL_INTEGER 4
|
|
110
|
+
#define SQL_SMALLINT 5
|
|
111
|
+
#define SQL_FLOAT 6
|
|
112
|
+
#define SQL_REAL 7
|
|
113
|
+
#define SQL_DOUBLE 8
|
|
114
|
+
#define SQL_DATETIME 9
|
|
115
|
+
#define SQL_VARCHAR 12
|
|
116
|
+
#define SQL_BOOLEAN 16
|
|
117
|
+
#define SQL_ROW 19
|
|
118
|
+
#define SQL_WCHAR (-8)
|
|
119
|
+
#define SQL_WVARCHAR (-9)
|
|
120
|
+
#define SQL_WLONGVARCHAR (-10)
|
|
121
|
+
#define SQL_DECFLOAT (-360)
|
|
122
|
+
/* One-parameter shortcuts for date/time data types */
|
|
123
|
+
#define SQL_TYPE_DATE 91
|
|
124
|
+
#define SQL_TYPE_TIME 92
|
|
125
|
+
#define SQL_TYPE_TIMESTAMP 93
|
|
126
|
+
/* SQL Datatype for Time Zone */
|
|
127
|
+
#define SQL_TYPE_TIMESTAMP_WITH_TIMEZONE 95
|
|
128
|
+
|
|
129
|
+
/* Statement attribute values for cursor sensitivity */
|
|
130
|
+
#define SQL_UNSPECIFIED 0
|
|
131
|
+
#define SQL_INSENSITIVE 1
|
|
132
|
+
#define SQL_SENSITIVE 2
|
|
133
|
+
|
|
134
|
+
/* Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData() */
|
|
135
|
+
#define SQL_DEFAULT 99
|
|
136
|
+
|
|
137
|
+
/* SQLGetData() code indicating that the application row descriptor
|
|
138
|
+
* specifies the data type
|
|
139
|
+
*/
|
|
140
|
+
#define SQL_ARD_TYPE (-99)
|
|
141
|
+
|
|
142
|
+
/* SQL date/time type subcodes */
|
|
143
|
+
#define SQL_CODE_DATE 1
|
|
144
|
+
#define SQL_CODE_TIME 2
|
|
145
|
+
#define SQL_CODE_TIMESTAMP 3
|
|
146
|
+
#define SQL_CODE_TIMESTAMP_WITH_TIMEZONE 4
|
|
147
|
+
|
|
148
|
+
/* SQL extended data types */
|
|
149
|
+
#define SQL_GRAPHIC -95
|
|
150
|
+
#define SQL_VARGRAPHIC -96
|
|
151
|
+
#define SQL_LONGVARGRAPHIC -97
|
|
152
|
+
#define SQL_BLOB -98
|
|
153
|
+
#define SQL_CLOB -99
|
|
154
|
+
#define SQL_DBCLOB -350
|
|
155
|
+
#define SQL_XML -370
|
|
156
|
+
#define SQL_CURSORHANDLE -380
|
|
157
|
+
#define SQL_DATALINK -400
|
|
158
|
+
#define SQL_USER_DEFINED_TYPE -450
|
|
159
|
+
|
|
160
|
+
/* C data type to SQL data type mapping */
|
|
161
|
+
#define SQL_C_DBCHAR SQL_DBCLOB
|
|
162
|
+
#define SQL_C_DECIMAL_IBM SQL_DECIMAL
|
|
163
|
+
#define SQL_C_DATALINK SQL_C_CHAR
|
|
164
|
+
#define SQL_C_PTR 2463
|
|
165
|
+
#define SQL_C_DECIMAL_OLEDB 2514
|
|
166
|
+
#define SQL_C_DECIMAL64 SQL_DECFLOAT
|
|
167
|
+
#define SQL_C_DECIMAL128 -361
|
|
168
|
+
#define SQL_C_TIMESTAMP_EXT -362
|
|
169
|
+
#define SQL_C_TYPE_TIMESTAMP_EXT SQL_C_TIMESTAMP_EXT
|
|
170
|
+
#define SQL_C_BINARYXML -363
|
|
171
|
+
#define SQL_C_TIMESTAMP_EXT_TZ -364
|
|
172
|
+
#define SQL_C_TYPE_TIMESTAMP_EXT_TZ SQL_C_TIMESTAMP_EXT_TZ
|
|
173
|
+
#define SQL_C_CURSORHANDLE -365
|
|
174
|
+
|
|
175
|
+
/*
|
|
176
|
+
* locator type identifier
|
|
177
|
+
*/
|
|
178
|
+
|
|
179
|
+
#define SQL_BLOB_LOCATOR 31
|
|
180
|
+
#define SQL_CLOB_LOCATOR 41
|
|
181
|
+
#define SQL_DBCLOB_LOCATOR -351
|
|
182
|
+
|
|
183
|
+
/*
|
|
184
|
+
* C Data Type for the LOB locator types
|
|
185
|
+
*/
|
|
186
|
+
#define SQL_C_BLOB_LOCATOR SQL_BLOB_LOCATOR
|
|
187
|
+
#define SQL_C_CLOB_LOCATOR SQL_CLOB_LOCATOR
|
|
188
|
+
#define SQL_C_DBCLOB_LOCATOR SQL_DBCLOB_LOCATOR
|
|
189
|
+
|
|
190
|
+
/*
|
|
191
|
+
* NULL status defines; these are used in SQLColAttributes, SQLDescribeCol,
|
|
192
|
+
* to describe the nullability of a column in a table.
|
|
193
|
+
*/
|
|
194
|
+
|
|
195
|
+
#define SQL_NO_NULLS 0
|
|
196
|
+
#define SQL_NULLABLE 1
|
|
197
|
+
#define SQL_NULLABLE_UNKNOWN 2
|
|
198
|
+
|
|
199
|
+
/* values of UNNAMED field in descriptor used in SQLColAttribute */
|
|
200
|
+
#define SQL_NAMED 0
|
|
201
|
+
#define SQL_UNNAMED 1
|
|
202
|
+
|
|
203
|
+
/* values of ALLOC_TYPE field in descriptor */
|
|
204
|
+
#define SQL_DESC_ALLOC_AUTO 1
|
|
205
|
+
#define SQL_DESC_ALLOC_USER 2
|
|
206
|
+
|
|
207
|
+
/* values of USER_DEFINED_TYPE_CODE */
|
|
208
|
+
#define SQL_TYPE_BASE 0
|
|
209
|
+
#define SQL_TYPE_DISTINCT 1
|
|
210
|
+
#define SQL_TYPE_STRUCTURED 2
|
|
211
|
+
#define SQL_TYPE_REFERENCE 3
|
|
212
|
+
|
|
213
|
+
/* Special length values */
|
|
214
|
+
#define SQL_NULL_DATA -1
|
|
215
|
+
#define SQL_DATA_AT_EXEC -2
|
|
216
|
+
#define SQL_NTS -3 /* NTS = Null Terminated String */
|
|
217
|
+
#define SQL_NTSL -3L /* NTS = Null Terminated String */
|
|
218
|
+
|
|
219
|
+
/* SQLColAttributes defines */
|
|
220
|
+
#define SQL_COLUMN_SCHEMA_NAME 16
|
|
221
|
+
#define SQL_COLUMN_CATALOG_NAME 17
|
|
222
|
+
#define SQL_COLUMN_DISTINCT_TYPE 1250
|
|
223
|
+
#define SQL_DESC_DISTINCT_TYPE SQL_COLUMN_DISTINCT_TYPE
|
|
224
|
+
#define SQL_COLUMN_REFERENCE_TYPE 1251
|
|
225
|
+
#define SQL_DESC_REFERENCE_TYPE SQL_COLUMN_REFERENCE_TYPE
|
|
226
|
+
#define SQL_DESC_STRUCTURED_TYPE 1252
|
|
227
|
+
#define SQL_DESC_USER_TYPE 1253
|
|
228
|
+
#define SQL_DESC_BASE_TYPE 1254
|
|
229
|
+
#define SQL_DESC_KEY_TYPE 1255
|
|
230
|
+
#define SQL_DESC_KEY_MEMBER 1266
|
|
231
|
+
#define SQL_DESC_IDENTITY_VALUE 1267
|
|
232
|
+
#define SQL_DESC_CODEPAGE 1268
|
|
233
|
+
|
|
234
|
+
/* identifiers of fields in the SQL descriptor */
|
|
235
|
+
#define SQL_DESC_COUNT 1001
|
|
236
|
+
#define SQL_DESC_TYPE 1002
|
|
237
|
+
#define SQL_DESC_LENGTH 1003
|
|
238
|
+
#define SQL_DESC_OCTET_LENGTH_PTR 1004
|
|
239
|
+
#define SQL_DESC_PRECISION 1005
|
|
240
|
+
#define SQL_DESC_SCALE 1006
|
|
241
|
+
#define SQL_DESC_DATETIME_INTERVAL_CODE 1007
|
|
242
|
+
#define SQL_DESC_NULLABLE 1008
|
|
243
|
+
#define SQL_DESC_INDICATOR_PTR 1009
|
|
244
|
+
#define SQL_DESC_DATA_PTR 1010
|
|
245
|
+
#define SQL_DESC_NAME 1011
|
|
246
|
+
#define SQL_DESC_UNNAMED 1012
|
|
247
|
+
#define SQL_DESC_OCTET_LENGTH 1013
|
|
248
|
+
#define SQL_DESC_ALLOC_TYPE 1099
|
|
249
|
+
#define SQL_DESC_USER_DEFINED_TYPE_CODE 1098
|
|
250
|
+
#define SQL_DESC_CARDINALITY 1040
|
|
251
|
+
#define SQL_DESC_CARDINALITY_PTR 1043
|
|
252
|
+
#define SQL_DESC_ROW_DESC 1044
|
|
253
|
+
|
|
254
|
+
/* Defines for SQL_DESC_KEY_TYPE */
|
|
255
|
+
#define SQL_KEYTYPE_NONE 0
|
|
256
|
+
#define SQL_KEYTYPE_PRIMARYKEY 1
|
|
257
|
+
#define SQL_KEYTYPE_UNIQUEINDEX 2
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
/* SQLColAttribute defines for SQL_COLUMN_UPDATABLE condition */
|
|
261
|
+
#define SQL_UPDT_READONLY 0
|
|
262
|
+
#define SQL_UPDT_WRITE 1
|
|
263
|
+
#define SQL_UPDT_READWRITE_UNKNOWN 2
|
|
264
|
+
|
|
265
|
+
/*
|
|
266
|
+
* SQLColAttribute defines for SQL_COLUMN_SEARCHABLE condition.
|
|
267
|
+
*/
|
|
268
|
+
#define SQL_PRED_NONE 0
|
|
269
|
+
#define SQL_PRED_CHAR 1
|
|
270
|
+
#define SQL_PRED_BASIC 2
|
|
271
|
+
|
|
272
|
+
/* NULL handle defines */
|
|
273
|
+
#define SQL_NULL_HENV 0L
|
|
274
|
+
#define SQL_NULL_HDBC 0L
|
|
275
|
+
#define SQL_NULL_HSTMT 0L
|
|
276
|
+
#define SQL_NULL_HDESC 0L
|
|
277
|
+
#define SQL_NULL_HANDLE 0L
|
|
278
|
+
|
|
279
|
+
/* identifiers of fields in the diagnostics area */
|
|
280
|
+
#define SQL_DIAG_RETURNCODE 1
|
|
281
|
+
#define SQL_DIAG_NUMBER 2
|
|
282
|
+
#define SQL_DIAG_ROW_COUNT 3
|
|
283
|
+
#define SQL_DIAG_SQLSTATE 4
|
|
284
|
+
#define SQL_DIAG_NATIVE 5
|
|
285
|
+
#define SQL_DIAG_MESSAGE_TEXT 6
|
|
286
|
+
#define SQL_DIAG_DYNAMIC_FUNCTION 7
|
|
287
|
+
#define SQL_DIAG_CLASS_ORIGIN 8
|
|
288
|
+
#define SQL_DIAG_SUBCLASS_ORIGIN 9
|
|
289
|
+
#define SQL_DIAG_CONNECTION_NAME 10
|
|
290
|
+
#define SQL_DIAG_SERVER_NAME 11
|
|
291
|
+
#define SQL_DIAG_DYNAMIC_FUNCTION_CODE 12
|
|
292
|
+
#define SQL_DIAG_ISAM_ERROR 13
|
|
293
|
+
|
|
294
|
+
#define SQL_DIAG_SYSPLEX_STATISTICS 2528
|
|
295
|
+
#define SQL_DIAG_DB2ZLOAD_RETCODE 2529
|
|
296
|
+
#define SQL_DIAG_DB2ZLOAD_LOAD_MSGS 2530
|
|
297
|
+
#define SQL_DIAG_LOG_FILENAME 2531
|
|
298
|
+
#define SQL_DIAG_BAD_FILENAME 2532
|
|
299
|
+
|
|
300
|
+
/* dynamic function codes */
|
|
301
|
+
#define SQL_DIAG_ALTER_TABLE 4
|
|
302
|
+
#define SQL_DIAG_CALL 7
|
|
303
|
+
#define SQL_DIAG_CREATE_INDEX (-1)
|
|
304
|
+
#define SQL_DIAG_CREATE_TABLE 77
|
|
305
|
+
#define SQL_DIAG_CREATE_VIEW 84
|
|
306
|
+
#define SQL_DIAG_DELETE_WHERE 19
|
|
307
|
+
#define SQL_DIAG_DROP_INDEX (-2)
|
|
308
|
+
#define SQL_DIAG_DROP_TABLE 32
|
|
309
|
+
#define SQL_DIAG_DROP_VIEW 36
|
|
310
|
+
#define SQL_DIAG_DYNAMIC_DELETE_CURSOR 38
|
|
311
|
+
#define SQL_DIAG_DYNAMIC_UPDATE_CURSOR 81
|
|
312
|
+
#define SQL_DIAG_GRANT 48
|
|
313
|
+
#define SQL_DIAG_INSERT 50
|
|
314
|
+
#define SQL_DIAG_MERGE 128
|
|
315
|
+
#define SQL_DIAG_REVOKE 59
|
|
316
|
+
#define SQL_DIAG_SELECT_CURSOR 85
|
|
317
|
+
#define SQL_DIAG_UNKNOWN_STATEMENT 0
|
|
318
|
+
#define SQL_DIAG_UPDATE_WHERE 82
|
|
319
|
+
|
|
320
|
+
/*
|
|
321
|
+
* IBM specific SQLGetDiagField values.
|
|
322
|
+
*/
|
|
323
|
+
|
|
324
|
+
#define SQL_DIAG_DEFERRED_PREPARE_ERROR 1279
|
|
325
|
+
|
|
326
|
+
/* SQL_DIAG_ROW_NUMBER values */
|
|
327
|
+
#define SQL_ROW_NO_ROW_NUMBER (-1)
|
|
328
|
+
#define SQL_ROW_NUMBER_UNKNOWN (-2)
|
|
329
|
+
|
|
330
|
+
/* SQL_DIAG_COLUMN_NUMBER values */
|
|
331
|
+
#define SQL_COLUMN_NO_COLUMN_NUMBER (-1)
|
|
332
|
+
#define SQL_COLUMN_NUMBER_UNKNOWN (-2)
|
|
333
|
+
|
|
334
|
+
/*
|
|
335
|
+
* The following are provided to enhance portability and compatibility
|
|
336
|
+
* with ODBC
|
|
337
|
+
*/
|
|
338
|
+
|
|
339
|
+
typedef signed char SCHAR;
|
|
340
|
+
typedef unsigned char UCHAR;
|
|
341
|
+
|
|
342
|
+
typedef short int SWORD;
|
|
343
|
+
typedef unsigned short USHORT;
|
|
344
|
+
|
|
345
|
+
typedef signed short SSHORT;
|
|
346
|
+
typedef unsigned short int UWORD;
|
|
347
|
+
|
|
348
|
+
#if defined(DB2NT)
|
|
349
|
+
typedef long SDWORD;
|
|
350
|
+
typedef unsigned long ULONG;
|
|
351
|
+
typedef unsigned long UDWORD;
|
|
352
|
+
typedef long SLONG;
|
|
353
|
+
#else
|
|
354
|
+
typedef sqlint32 SDWORD;
|
|
355
|
+
typedef sqluint32 ULONG;
|
|
356
|
+
typedef sqluint32 UDWORD;
|
|
357
|
+
typedef sqlint32 SLONG;
|
|
358
|
+
#endif
|
|
359
|
+
typedef double SDOUBLE;
|
|
360
|
+
typedef float SFLOAT;
|
|
361
|
+
typedef unsigned char SQLDATE;
|
|
362
|
+
typedef unsigned char SQLTIME;
|
|
363
|
+
typedef unsigned char SQLTIMESTAMP;
|
|
364
|
+
typedef unsigned char SQLDECIMAL;
|
|
365
|
+
typedef unsigned char SQLNUMERIC;
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
#if defined(WINDOWS)
|
|
370
|
+
typedef long double LDOUBLE;
|
|
371
|
+
#else
|
|
372
|
+
typedef double LDOUBLE;
|
|
373
|
+
#endif
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
typedef void FAR * PTR;
|
|
377
|
+
typedef void FAR * HENV;
|
|
378
|
+
typedef void FAR * HDBC;
|
|
379
|
+
typedef void FAR * HSTMT;
|
|
380
|
+
|
|
381
|
+
typedef signed short RETCODE;
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
/* SQL portable types for C */
|
|
386
|
+
typedef UCHAR SQLCHAR;
|
|
387
|
+
typedef UCHAR SQLVARCHAR;
|
|
388
|
+
typedef SCHAR SQLSCHAR;
|
|
389
|
+
typedef SDWORD SQLINTEGER;
|
|
390
|
+
typedef SWORD SQLSMALLINT;
|
|
391
|
+
typedef SDOUBLE SQLDOUBLE;
|
|
392
|
+
typedef SDOUBLE SQLFLOAT;
|
|
393
|
+
typedef SFLOAT SQLREAL;
|
|
394
|
+
|
|
395
|
+
typedef SQLSMALLINT SQLRETURN;
|
|
396
|
+
|
|
397
|
+
#if (DB2CLI_VER >= 0x0200)
|
|
398
|
+
typedef UDWORD SQLUINTEGER;
|
|
399
|
+
typedef UWORD SQLUSMALLINT;
|
|
400
|
+
#else
|
|
401
|
+
typedef SQLINTEGER SQLUINTEGER;
|
|
402
|
+
typedef SQLSMALLINT SQLUSMALLINT;
|
|
403
|
+
#endif
|
|
404
|
+
|
|
405
|
+
/* 64-bit Length Defines */
|
|
406
|
+
#ifdef ODBC64
|
|
407
|
+
typedef sqlint64 SQLLEN;
|
|
408
|
+
typedef sqluint64 SQLULEN;
|
|
409
|
+
typedef sqluint64 SQLSETPOSIROW;
|
|
410
|
+
#else
|
|
411
|
+
#define SQLLEN SQLINTEGER
|
|
412
|
+
#define SQLULEN SQLUINTEGER
|
|
413
|
+
#define SQLSETPOSIROW SQLUSMALLINT
|
|
414
|
+
#endif
|
|
415
|
+
|
|
416
|
+
typedef PTR SQLPOINTER;
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
/*
|
|
421
|
+
* Double Byte Character Set support
|
|
422
|
+
*/
|
|
423
|
+
|
|
424
|
+
/*
|
|
425
|
+
* Do not support SQL_WCHART_CONVERT in UNICODE
|
|
426
|
+
*/
|
|
427
|
+
#ifdef UNICODE
|
|
428
|
+
#undef SQL_WCHART_CONVERT
|
|
429
|
+
#endif
|
|
430
|
+
|
|
431
|
+
#ifdef SQL_WCHART_CONVERT
|
|
432
|
+
typedef wchar_t SQLDBCHAR;
|
|
433
|
+
#else
|
|
434
|
+
typedef unsigned short SQLDBCHAR;
|
|
435
|
+
#endif
|
|
436
|
+
|
|
437
|
+
#ifdef DB2WIN
|
|
438
|
+
typedef wchar_t SQLWCHAR;
|
|
439
|
+
#else
|
|
440
|
+
typedef unsigned short SQLWCHAR;
|
|
441
|
+
#endif
|
|
442
|
+
|
|
443
|
+
#ifdef UNICODE
|
|
444
|
+
typedef SQLWCHAR SQLTCHAR;
|
|
445
|
+
#else
|
|
446
|
+
typedef SQLCHAR SQLTCHAR;
|
|
447
|
+
#endif
|
|
448
|
+
|
|
449
|
+
#ifdef DB2WIN
|
|
450
|
+
#if ((defined DB2NT && defined _WIN64 && OLEDBWIN))
|
|
451
|
+
typedef void* SQLHANDLE;
|
|
452
|
+
#else
|
|
453
|
+
typedef SQLINTEGER SQLHANDLE;
|
|
454
|
+
#endif
|
|
455
|
+
|
|
456
|
+
typedef HENV SQLHENV;
|
|
457
|
+
typedef HDBC SQLHDBC;
|
|
458
|
+
typedef HSTMT SQLHSTMT;
|
|
459
|
+
typedef HWND SQLHWND;
|
|
460
|
+
|
|
461
|
+
#else
|
|
462
|
+
#if ((defined DB2NT && defined _WIN64) || defined ODBC64)
|
|
463
|
+
typedef void * SQLHANDLE;
|
|
464
|
+
typedef SQLHANDLE SQLHENV;
|
|
465
|
+
typedef SQLHANDLE SQLHDBC;
|
|
466
|
+
typedef SQLHANDLE SQLHSTMT;
|
|
467
|
+
#else
|
|
468
|
+
|
|
469
|
+
#ifndef __SQLTYPES
|
|
470
|
+
typedef SQLINTEGER SQLHANDLE;
|
|
471
|
+
typedef SQLINTEGER SQLHENV;
|
|
472
|
+
typedef SQLINTEGER SQLHDBC;
|
|
473
|
+
typedef SQLINTEGER SQLHSTMT;
|
|
474
|
+
#endif
|
|
475
|
+
#endif
|
|
476
|
+
|
|
477
|
+
#if defined (DB2NT)
|
|
478
|
+
typedef HWND SQLHWND;
|
|
479
|
+
#else
|
|
480
|
+
typedef SQLPOINTER SQLHWND;
|
|
481
|
+
#endif
|
|
482
|
+
|
|
483
|
+
#endif
|
|
484
|
+
typedef SQLHANDLE SQLHDESC;
|
|
485
|
+
|
|
486
|
+
#ifndef __SQLTYPES
|
|
487
|
+
|
|
488
|
+
/*
|
|
489
|
+
* SQL_NO_NATIVE_BIGINT_SUPPORT and SQL_BIGINT_TYPE are defined in sqlsystm.h
|
|
490
|
+
*
|
|
491
|
+
*/
|
|
492
|
+
|
|
493
|
+
#if defined(SQL_NO_NATIVE_BIGINT_SUPPORT)
|
|
494
|
+
typedef struct SQLBIGINT
|
|
495
|
+
{
|
|
496
|
+
SQLUINTEGER dwLowWord;
|
|
497
|
+
SQLINTEGER dwHighWord;
|
|
498
|
+
} SQLBIGINT;
|
|
499
|
+
typedef struct SQLUBIGINT
|
|
500
|
+
{
|
|
501
|
+
SQLUINTEGER dwLowWord;
|
|
502
|
+
SQLUINTEGER dwHighWord;
|
|
503
|
+
} SQLUBIGINT;
|
|
504
|
+
#elif defined(SQL_BIGINT_TYPE)
|
|
505
|
+
typedef SQL_BIGINT_TYPE SQLBIGINT;
|
|
506
|
+
typedef SQL_BIGUINT_TYPE SQLUBIGINT;
|
|
507
|
+
#endif
|
|
508
|
+
|
|
509
|
+
typedef struct DATE_STRUCT
|
|
510
|
+
{
|
|
511
|
+
SQLSMALLINT year;
|
|
512
|
+
SQLUSMALLINT month;
|
|
513
|
+
SQLUSMALLINT day;
|
|
514
|
+
} DATE_STRUCT;
|
|
515
|
+
|
|
516
|
+
typedef DATE_STRUCT SQL_DATE_STRUCT;
|
|
517
|
+
|
|
518
|
+
typedef struct TIME_STRUCT
|
|
519
|
+
{
|
|
520
|
+
SQLUSMALLINT hour;
|
|
521
|
+
SQLUSMALLINT minute;
|
|
522
|
+
SQLUSMALLINT second;
|
|
523
|
+
} TIME_STRUCT;
|
|
524
|
+
|
|
525
|
+
typedef TIME_STRUCT SQL_TIME_STRUCT;
|
|
526
|
+
|
|
527
|
+
typedef struct TIMESTAMP_STRUCT
|
|
528
|
+
{
|
|
529
|
+
SQLSMALLINT year;
|
|
530
|
+
SQLUSMALLINT month;
|
|
531
|
+
SQLUSMALLINT day;
|
|
532
|
+
SQLUSMALLINT hour;
|
|
533
|
+
SQLUSMALLINT minute;
|
|
534
|
+
SQLUSMALLINT second;
|
|
535
|
+
SQLUINTEGER fraction; /* fraction of a second */
|
|
536
|
+
} TIMESTAMP_STRUCT;
|
|
537
|
+
|
|
538
|
+
typedef TIMESTAMP_STRUCT SQL_TIMESTAMP_STRUCT;
|
|
539
|
+
|
|
540
|
+
typedef struct TIMESTAMP_STRUCT_EXT
|
|
541
|
+
{
|
|
542
|
+
SQLSMALLINT year;
|
|
543
|
+
SQLUSMALLINT month;
|
|
544
|
+
SQLUSMALLINT day;
|
|
545
|
+
SQLUSMALLINT hour;
|
|
546
|
+
SQLUSMALLINT minute;
|
|
547
|
+
SQLUSMALLINT second;
|
|
548
|
+
SQLUINTEGER fraction; /* hold nanoseconds - 1~9 digit */
|
|
549
|
+
SQLUINTEGER fraction2; /* hold picoseconds - 10~12 digit */
|
|
550
|
+
} TIMESTAMP_STRUCT_EXT;
|
|
551
|
+
|
|
552
|
+
typedef TIMESTAMP_STRUCT_EXT SQL_TIMESTAMP_STRUCT_EXT;
|
|
553
|
+
|
|
554
|
+
typedef struct TIMESTAMP_STRUCT_EXT_TZ
|
|
555
|
+
{
|
|
556
|
+
SQLSMALLINT year;
|
|
557
|
+
SQLUSMALLINT month;
|
|
558
|
+
SQLUSMALLINT day;
|
|
559
|
+
SQLUSMALLINT hour;
|
|
560
|
+
SQLUSMALLINT minute;
|
|
561
|
+
SQLUSMALLINT second;
|
|
562
|
+
SQLUINTEGER fraction; /* hold nanoseconds - 1~9 digit */
|
|
563
|
+
SQLUINTEGER fraction2; /* hold picoseconds - 10~12 digit */
|
|
564
|
+
SQLSMALLINT timezone_hour; /* -12 to 14 */
|
|
565
|
+
SQLSMALLINT timezone_minute; /* -59 to 59 */
|
|
566
|
+
} TIMESTAMP_STRUCT_EXT_TZ;
|
|
567
|
+
|
|
568
|
+
typedef TIMESTAMP_STRUCT_EXT_TZ SQL_TIMESTAMP_STRUCT_EXT_TZ;
|
|
569
|
+
|
|
570
|
+
typedef enum
|
|
571
|
+
{
|
|
572
|
+
SQL_IS_YEAR = 1,
|
|
573
|
+
SQL_IS_MONTH = 2,
|
|
574
|
+
SQL_IS_DAY = 3,
|
|
575
|
+
SQL_IS_HOUR = 4,
|
|
576
|
+
SQL_IS_MINUTE = 5,
|
|
577
|
+
SQL_IS_SECOND = 6,
|
|
578
|
+
SQL_IS_YEAR_TO_MONTH = 7,
|
|
579
|
+
SQL_IS_DAY_TO_HOUR = 8,
|
|
580
|
+
SQL_IS_DAY_TO_MINUTE = 9,
|
|
581
|
+
SQL_IS_DAY_TO_SECOND = 10,
|
|
582
|
+
SQL_IS_HOUR_TO_MINUTE = 11,
|
|
583
|
+
SQL_IS_HOUR_TO_SECOND = 12,
|
|
584
|
+
SQL_IS_MINUTE_TO_SECOND = 13
|
|
585
|
+
} SQLINTERVAL;
|
|
586
|
+
|
|
587
|
+
typedef struct tagSQL_YEAR_MONTH
|
|
588
|
+
{
|
|
589
|
+
SQLUINTEGER year;
|
|
590
|
+
SQLUINTEGER month;
|
|
591
|
+
} SQL_YEAR_MONTH_STRUCT;
|
|
592
|
+
|
|
593
|
+
typedef struct tagSQL_DAY_SECOND
|
|
594
|
+
{
|
|
595
|
+
SQLUINTEGER day;
|
|
596
|
+
SQLUINTEGER hour;
|
|
597
|
+
SQLUINTEGER minute;
|
|
598
|
+
SQLUINTEGER second;
|
|
599
|
+
SQLUINTEGER fraction;
|
|
600
|
+
} SQL_DAY_SECOND_STRUCT;
|
|
601
|
+
|
|
602
|
+
typedef struct tagSQL_INTERVAL_STRUCT
|
|
603
|
+
{
|
|
604
|
+
SQLINTERVAL interval_type;
|
|
605
|
+
SQLSMALLINT interval_sign;
|
|
606
|
+
union {
|
|
607
|
+
SQL_YEAR_MONTH_STRUCT year_month;
|
|
608
|
+
SQL_DAY_SECOND_STRUCT day_second;
|
|
609
|
+
} intval;
|
|
610
|
+
|
|
611
|
+
} SQL_INTERVAL_STRUCT;
|
|
612
|
+
|
|
613
|
+
/* Maximum precision (in base 10) of an SQL_C_NUMERIC value */
|
|
614
|
+
#define SQL_MAX_C_NUMERIC_PRECISION 38
|
|
615
|
+
|
|
616
|
+
/* internal representation of numeric data type */
|
|
617
|
+
#define SQL_MAX_NUMERIC_LEN 16
|
|
618
|
+
typedef struct tagSQL_NUMERIC_STRUCT
|
|
619
|
+
{
|
|
620
|
+
SQLCHAR precision;
|
|
621
|
+
SQLSCHAR scale;
|
|
622
|
+
SQLCHAR sign; /* 1 if positive, 0 if negative */
|
|
623
|
+
SQLCHAR val[SQL_MAX_NUMERIC_LEN];
|
|
624
|
+
} SQL_NUMERIC_STRUCT;
|
|
625
|
+
|
|
626
|
+
#endif
|
|
627
|
+
|
|
628
|
+
|
|
629
|
+
#define SQL_DECIMAL64_LEN 8
|
|
630
|
+
#define SQL_DECIMAL128_LEN 16
|
|
631
|
+
|
|
632
|
+
typedef struct SQLDECIMAL64 {
|
|
633
|
+
union {
|
|
634
|
+
SQLDOUBLE dummy; /* Dummy member for alignment purposes */
|
|
635
|
+
SQLCHAR dec64[SQL_DECIMAL64_LEN];
|
|
636
|
+
} udec64;
|
|
637
|
+
} SQLDECIMAL64;
|
|
638
|
+
|
|
639
|
+
typedef struct SQLDECIMAL128 {
|
|
640
|
+
union {
|
|
641
|
+
SQLDOUBLE dummy; /* Dummy member for alignment purposes */
|
|
642
|
+
SQLCHAR dec128[SQL_DECIMAL128_LEN];
|
|
643
|
+
} udec128;
|
|
644
|
+
} SQLDECIMAL128;
|
|
645
|
+
|
|
646
|
+
/* Core Function Prototypes */
|
|
647
|
+
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
|
|
651
|
+
SQLRETURN SQL_API_FN SQLAllocConnect (SQLHENV henv,
|
|
652
|
+
SQLHDBC FAR *phdbc);
|
|
653
|
+
|
|
654
|
+
|
|
655
|
+
SQLRETURN SQL_API_FN SQLAllocEnv (SQLHENV FAR *phenv);
|
|
656
|
+
|
|
657
|
+
SQLRETURN SQL_API_FN SQLAllocStmt (SQLHDBC hdbc,
|
|
658
|
+
SQLHSTMT FAR *phstmt);
|
|
659
|
+
|
|
660
|
+
SQLRETURN SQL_API_FN SQLAllocHandle( SQLSMALLINT fHandleType,
|
|
661
|
+
SQLHANDLE hInput,
|
|
662
|
+
SQLHANDLE * phOutput );
|
|
663
|
+
|
|
664
|
+
SQLRETURN SQL_API_FN SQLBindCol (SQLHSTMT hstmt,
|
|
665
|
+
SQLUSMALLINT icol,
|
|
666
|
+
SQLSMALLINT fCType,
|
|
667
|
+
SQLPOINTER rgbValue,
|
|
668
|
+
SQLLEN cbValueMax,
|
|
669
|
+
SQLLEN FAR *pcbValue);
|
|
670
|
+
|
|
671
|
+
SQLRETURN SQL_API_FN SQLCancel (SQLHSTMT hstmt);
|
|
672
|
+
|
|
673
|
+
|
|
674
|
+
#ifdef ODBC64
|
|
675
|
+
SQLRETURN SQL_API_FN SQLColAttribute (SQLHSTMT hstmt,
|
|
676
|
+
SQLUSMALLINT icol,
|
|
677
|
+
SQLUSMALLINT fDescType,
|
|
678
|
+
SQLPOINTER rgbDesc,
|
|
679
|
+
SQLSMALLINT cbDescMax,
|
|
680
|
+
SQLSMALLINT FAR *pcbDesc,
|
|
681
|
+
SQLLEN *pfDesc);
|
|
682
|
+
#else
|
|
683
|
+
SQLRETURN SQL_API_FN SQLColAttribute (SQLHSTMT hstmt,
|
|
684
|
+
SQLUSMALLINT icol,
|
|
685
|
+
SQLUSMALLINT fDescType,
|
|
686
|
+
SQLPOINTER rgbDesc,
|
|
687
|
+
SQLSMALLINT cbDescMax,
|
|
688
|
+
SQLSMALLINT FAR *pcbDesc,
|
|
689
|
+
SQLPOINTER pfDesc);
|
|
690
|
+
#endif
|
|
691
|
+
|
|
692
|
+
|
|
693
|
+
|
|
694
|
+
SQLRETURN SQL_API_FN SQLConnect (SQLHDBC hdbc,
|
|
695
|
+
SQLCHAR FAR *szDSN,
|
|
696
|
+
SQLSMALLINT cbDSN,
|
|
697
|
+
SQLCHAR FAR *szUID,
|
|
698
|
+
SQLSMALLINT cbUID,
|
|
699
|
+
SQLCHAR FAR *szAuthStr,
|
|
700
|
+
SQLSMALLINT cbAuthStr);
|
|
701
|
+
|
|
702
|
+
SQLRETURN SQL_API_FN SQLDescribeCol (SQLHSTMT hstmt,
|
|
703
|
+
SQLUSMALLINT icol,
|
|
704
|
+
SQLCHAR FAR *szColName,
|
|
705
|
+
SQLSMALLINT cbColNameMax,
|
|
706
|
+
SQLSMALLINT FAR *pcbColName,
|
|
707
|
+
SQLSMALLINT FAR *pfSqlType,
|
|
708
|
+
SQLULEN FAR *pcbColDef,
|
|
709
|
+
SQLSMALLINT FAR *pibScale,
|
|
710
|
+
SQLSMALLINT FAR *pfNullable);
|
|
711
|
+
|
|
712
|
+
SQLRETURN SQL_API_FN SQLDisconnect (SQLHDBC hdbc);
|
|
713
|
+
|
|
714
|
+
SQLRETURN SQL_API_FN SQLError (SQLHENV henv,
|
|
715
|
+
SQLHDBC hdbc,
|
|
716
|
+
SQLHSTMT hstmt,
|
|
717
|
+
SQLCHAR FAR *szSqlState,
|
|
718
|
+
SQLINTEGER FAR *pfNativeError,
|
|
719
|
+
SQLCHAR FAR *szErrorMsg,
|
|
720
|
+
SQLSMALLINT cbErrorMsgMax,
|
|
721
|
+
SQLSMALLINT FAR *pcbErrorMsg);
|
|
722
|
+
|
|
723
|
+
SQLRETURN SQL_API_FN SQLExecDirect (SQLHSTMT hstmt,
|
|
724
|
+
SQLCHAR FAR *szSqlStr,
|
|
725
|
+
SQLINTEGER cbSqlStr);
|
|
726
|
+
|
|
727
|
+
SQLRETURN SQL_API_FN SQLExecute (SQLHSTMT hstmt);
|
|
728
|
+
|
|
729
|
+
SQLRETURN SQL_API_FN SQLFetch (SQLHSTMT hstmt);
|
|
730
|
+
|
|
731
|
+
SQLRETURN SQL_API_FN SQLFreeConnect (SQLHDBC hdbc);
|
|
732
|
+
|
|
733
|
+
SQLRETURN SQL_API_FN SQLFreeEnv (SQLHENV henv);
|
|
734
|
+
|
|
735
|
+
SQLRETURN SQL_API_FN SQLFreeStmt (SQLHSTMT hstmt,
|
|
736
|
+
SQLUSMALLINT fOption);
|
|
737
|
+
|
|
738
|
+
SQLRETURN SQL_API_FN SQLCloseCursor( SQLHSTMT hStmt );
|
|
739
|
+
|
|
740
|
+
SQLRETURN SQL_API_FN SQLGetCursorName (SQLHSTMT hstmt,
|
|
741
|
+
SQLCHAR FAR *szCursor,
|
|
742
|
+
SQLSMALLINT cbCursorMax,
|
|
743
|
+
SQLSMALLINT FAR *pcbCursor);
|
|
744
|
+
|
|
745
|
+
SQLRETURN SQL_API_FN SQLGetData (SQLHSTMT hstmt,
|
|
746
|
+
SQLUSMALLINT icol,
|
|
747
|
+
SQLSMALLINT fCType,
|
|
748
|
+
SQLPOINTER rgbValue,
|
|
749
|
+
SQLLEN cbValueMax,
|
|
750
|
+
SQLLEN FAR *pcbValue);
|
|
751
|
+
|
|
752
|
+
SQLRETURN SQL_API_FN SQLNumResultCols (SQLHSTMT hstmt,
|
|
753
|
+
SQLSMALLINT FAR *pccol);
|
|
754
|
+
|
|
755
|
+
SQLRETURN SQL_API_FN SQLPrepare (SQLHSTMT hstmt,
|
|
756
|
+
SQLCHAR FAR *szSqlStr,
|
|
757
|
+
SQLINTEGER cbSqlStr);
|
|
758
|
+
|
|
759
|
+
SQLRETURN SQL_API_FN SQLRowCount (SQLHSTMT hstmt,
|
|
760
|
+
SQLLEN FAR *pcrow);
|
|
761
|
+
|
|
762
|
+
SQLRETURN SQL_API_FN SQLSetCursorName (SQLHSTMT hstmt,
|
|
763
|
+
SQLCHAR FAR *szCursor,
|
|
764
|
+
SQLSMALLINT cbCursor);
|
|
765
|
+
|
|
766
|
+
SQLRETURN SQL_API_FN SQLSetParam (SQLHSTMT hstmt,
|
|
767
|
+
SQLUSMALLINT ipar,
|
|
768
|
+
SQLSMALLINT fCType,
|
|
769
|
+
SQLSMALLINT fSqlType,
|
|
770
|
+
SQLULEN cbParamDef,
|
|
771
|
+
SQLSMALLINT ibScale,
|
|
772
|
+
SQLPOINTER rgbValue,
|
|
773
|
+
SQLLEN FAR *pcbValue);
|
|
774
|
+
|
|
775
|
+
SQLRETURN SQL_API_FN SQLTransact (SQLHENV henv,
|
|
776
|
+
SQLHDBC hdbc,
|
|
777
|
+
SQLUSMALLINT fType);
|
|
778
|
+
|
|
779
|
+
SQLRETURN SQL_API_FN SQLEndTran( SQLSMALLINT fHandleType,
|
|
780
|
+
SQLHANDLE hHandle,
|
|
781
|
+
SQLSMALLINT fType );
|
|
782
|
+
|
|
783
|
+
SQLRETURN SQL_API_FN SQLFreeHandle( SQLSMALLINT fHandleType,
|
|
784
|
+
SQLHANDLE hHandle );
|
|
785
|
+
|
|
786
|
+
SQLRETURN SQL_API_FN SQLGetDiagRec( SQLSMALLINT fHandleType,
|
|
787
|
+
SQLHANDLE hHandle,
|
|
788
|
+
SQLSMALLINT iRecNumber,
|
|
789
|
+
SQLCHAR * pszSqlState,
|
|
790
|
+
SQLINTEGER * pfNativeError,
|
|
791
|
+
SQLCHAR * pszErrorMsg,
|
|
792
|
+
SQLSMALLINT cbErrorMsgMax,
|
|
793
|
+
SQLSMALLINT * pcbErrorMsg );
|
|
794
|
+
|
|
795
|
+
SQLRETURN SQL_API_FN SQLGetDiagField( SQLSMALLINT fHandleType,
|
|
796
|
+
SQLHANDLE hHandle,
|
|
797
|
+
SQLSMALLINT iRecNumber,
|
|
798
|
+
SQLSMALLINT fDiagIdentifier,
|
|
799
|
+
SQLPOINTER pDiagInfo,
|
|
800
|
+
SQLSMALLINT cbDiagInfoMax,
|
|
801
|
+
SQLSMALLINT * pcbDiagInfo );
|
|
802
|
+
|
|
803
|
+
SQLRETURN SQL_API_FN SQLCopyDesc( SQLHDESC hDescSource,
|
|
804
|
+
SQLHDESC hDescTarget );
|
|
805
|
+
|
|
806
|
+
SQLRETURN SQL_API_FN SQLCreateDb ( SQLHDBC hDbc,
|
|
807
|
+
SQLCHAR *szDB,
|
|
808
|
+
SQLINTEGER cbDB,
|
|
809
|
+
SQLCHAR *szCodeset,
|
|
810
|
+
SQLINTEGER cbCodeset,
|
|
811
|
+
SQLCHAR *szMode,
|
|
812
|
+
SQLINTEGER cbMode);
|
|
813
|
+
|
|
814
|
+
SQLRETURN SQL_API_FN SQLDropDb( SQLHDBC hDbc,
|
|
815
|
+
SQLCHAR *szDB,
|
|
816
|
+
SQLINTEGER cbDB );
|
|
817
|
+
|
|
818
|
+
SQLRETURN SQL_API_FN SQLCreatePkg( SQLHDBC hDbc,
|
|
819
|
+
SQLCHAR *szBindFileName,
|
|
820
|
+
SQLINTEGER cbBindFileName,
|
|
821
|
+
SQLCHAR *szBindOpts,
|
|
822
|
+
SQLINTEGER cbBindOpts );
|
|
823
|
+
|
|
824
|
+
SQLRETURN SQL_API_FN SQLGetDescField( SQLHDESC DescriptorHandle,
|
|
825
|
+
SQLSMALLINT RecNumber,
|
|
826
|
+
SQLSMALLINT FieldIdentifier,
|
|
827
|
+
SQLPOINTER Value,
|
|
828
|
+
SQLINTEGER BufferLength,
|
|
829
|
+
SQLINTEGER *StringLength);
|
|
830
|
+
|
|
831
|
+
SQLRETURN SQL_API_FN SQLGetDescRec( SQLHDESC DescriptorHandle,
|
|
832
|
+
SQLSMALLINT RecNumber,
|
|
833
|
+
SQLCHAR *Name,
|
|
834
|
+
SQLSMALLINT BufferLength,
|
|
835
|
+
SQLSMALLINT *StringLength,
|
|
836
|
+
SQLSMALLINT *Type,
|
|
837
|
+
SQLSMALLINT *SubType,
|
|
838
|
+
SQLLEN *Length,
|
|
839
|
+
SQLSMALLINT *Precision,
|
|
840
|
+
SQLSMALLINT *Scale,
|
|
841
|
+
SQLSMALLINT *Nullable);
|
|
842
|
+
|
|
843
|
+
SQLRETURN SQL_API_FN SQLSetDescField( SQLHDESC DescriptorHandle,
|
|
844
|
+
SQLSMALLINT RecNumber,
|
|
845
|
+
SQLSMALLINT FieldIdentifier,
|
|
846
|
+
SQLPOINTER Value,
|
|
847
|
+
SQLINTEGER BufferLength);
|
|
848
|
+
|
|
849
|
+
SQLRETURN SQL_API_FN SQLSetDescRec( SQLHDESC DescriptorHandle,
|
|
850
|
+
SQLSMALLINT RecNumber,
|
|
851
|
+
SQLSMALLINT Type,
|
|
852
|
+
SQLSMALLINT SubType,
|
|
853
|
+
SQLLEN Length,
|
|
854
|
+
SQLSMALLINT Precision,
|
|
855
|
+
SQLSMALLINT Scale,
|
|
856
|
+
SQLPOINTER Data,
|
|
857
|
+
SQLLEN *StringLength,
|
|
858
|
+
SQLLEN *Indicator);
|
|
859
|
+
|
|
860
|
+
|
|
861
|
+
|
|
862
|
+
#ifdef __cplusplus
|
|
863
|
+
}
|
|
864
|
+
#endif
|
|
865
|
+
|
|
866
|
+
/*
|
|
867
|
+
* Include ODBC header files for
|
|
868
|
+
* functions that are not specified in the X/Open Call Level Interface.
|
|
869
|
+
* This is included with permission from Microsoft.
|
|
870
|
+
* Do not modify (i.e. must not add, remove, rearrange) any part of the
|
|
871
|
+
* contents of sqlext.h
|
|
872
|
+
* Note: SQLDrivers is not supported by DB2 CLI.
|
|
873
|
+
*/
|
|
874
|
+
#ifndef __SQL
|
|
875
|
+
#define __SQL
|
|
876
|
+
#define ODBCVER 0x0380
|
|
877
|
+
#endif
|
|
878
|
+
#if !defined(WINDOWS) && !defined(WIN32) && !defined(SQLWINT)
|
|
879
|
+
#ifndef __LPWSTR
|
|
880
|
+
typedef SQLWCHAR * LPWSTR;
|
|
881
|
+
#endif
|
|
882
|
+
|
|
883
|
+
#ifndef __DWORD
|
|
884
|
+
typedef sqluint32 DWORD;
|
|
885
|
+
#endif
|
|
886
|
+
|
|
887
|
+
#ifndef VOID
|
|
888
|
+
#define VOID void
|
|
889
|
+
#endif
|
|
890
|
+
|
|
891
|
+
#ifndef __BOOL
|
|
892
|
+
typedef unsigned BOOL;
|
|
893
|
+
#endif
|
|
894
|
+
|
|
895
|
+
#ifndef __WCHAR
|
|
896
|
+
typedef wchar_t WCHAR;
|
|
897
|
+
#endif
|
|
898
|
+
|
|
899
|
+
#ifndef CHAR
|
|
900
|
+
#define CHAR char
|
|
901
|
+
#define __DUMMYCHAR
|
|
902
|
+
#endif
|
|
903
|
+
|
|
904
|
+
#define GUID TAGGUID
|
|
905
|
+
|
|
906
|
+
typedef struct _TAGGUID {
|
|
907
|
+
unsigned long Data1;
|
|
908
|
+
unsigned short Data2;
|
|
909
|
+
unsigned short Data3;
|
|
910
|
+
unsigned char Data4[ 8 ];
|
|
911
|
+
} TAGGUID;
|
|
912
|
+
#endif
|
|
913
|
+
|
|
914
|
+
#ifndef __SQLUCODE
|
|
915
|
+
#define __SQLUCODE
|
|
916
|
+
#endif
|
|
917
|
+
|
|
918
|
+
|
|
919
|
+
#if !(defined(WINDOWS) || defined(WIN32) || defined(SQLWINT) || \
|
|
920
|
+
defined(DB2NT)) || !defined(__specstrings)
|
|
921
|
+
#ifndef __in
|
|
922
|
+
#define __in
|
|
923
|
+
#endif
|
|
924
|
+
#ifndef __out
|
|
925
|
+
#define __out
|
|
926
|
+
#endif
|
|
927
|
+
#ifndef __inout
|
|
928
|
+
#define __inout
|
|
929
|
+
#endif
|
|
930
|
+
#ifndef __in_opt
|
|
931
|
+
#define __in_opt
|
|
932
|
+
#endif
|
|
933
|
+
#ifndef __out_opt
|
|
934
|
+
#define __out_opt
|
|
935
|
+
#endif
|
|
936
|
+
#ifndef __inout_opt
|
|
937
|
+
#define __inout_opt
|
|
938
|
+
#endif
|
|
939
|
+
#ifndef __deref_out
|
|
940
|
+
#define __deref_out
|
|
941
|
+
#endif
|
|
942
|
+
#ifndef __deref_opt_out
|
|
943
|
+
#define __deref_opt_out
|
|
944
|
+
#endif
|
|
945
|
+
#ifndef __deref_out_opt
|
|
946
|
+
#define __deref_out_opt
|
|
947
|
+
#endif
|
|
948
|
+
#ifndef __in_ecount
|
|
949
|
+
#define __in_ecount(x)
|
|
950
|
+
#endif
|
|
951
|
+
#ifndef __out_ecount
|
|
952
|
+
#define __out_ecount(x)
|
|
953
|
+
#endif
|
|
954
|
+
#ifndef __inout_ecount
|
|
955
|
+
#define __inout_ecount(x)
|
|
956
|
+
#endif
|
|
957
|
+
#ifndef __in_ecount_opt
|
|
958
|
+
#define __in_ecount_opt(x)
|
|
959
|
+
#endif
|
|
960
|
+
#ifndef __out_ecount_opt
|
|
961
|
+
#define __out_ecount_opt(x)
|
|
962
|
+
#endif
|
|
963
|
+
#ifndef __inout_ecount_opt
|
|
964
|
+
#define __inout_ecount_opt(x)
|
|
965
|
+
#endif
|
|
966
|
+
#ifndef __in_bcount
|
|
967
|
+
#define __in_bcount(x)
|
|
968
|
+
#endif
|
|
969
|
+
#ifndef __out_bcount
|
|
970
|
+
#define __out_bcount(x)
|
|
971
|
+
#endif
|
|
972
|
+
#ifndef __inout_bcount
|
|
973
|
+
#define __inout_bcount(x)
|
|
974
|
+
#endif
|
|
975
|
+
#ifndef __in_bcount_opt
|
|
976
|
+
#define __in_bcount_opt(x)
|
|
977
|
+
#endif
|
|
978
|
+
#ifndef __out_bcount_opt
|
|
979
|
+
#define __out_bcount_opt(x)
|
|
980
|
+
#endif
|
|
981
|
+
#ifndef __inout_bcount_opt
|
|
982
|
+
#define __inout_bcount_opt(x)
|
|
983
|
+
#endif
|
|
984
|
+
#ifndef __out_xcount
|
|
985
|
+
#define __out_xcount(x)
|
|
986
|
+
#endif
|
|
987
|
+
#endif /* !WINDOWS && !WIN32 ... */
|
|
988
|
+
|
|
989
|
+
#include "sqlext.h"
|
|
990
|
+
|
|
991
|
+
#if !(defined(WINDOWS) || defined(WIN32) || defined(SQLWINT) || \
|
|
992
|
+
defined(DB2NT)) || !defined(__specstrings)
|
|
993
|
+
#undef __in
|
|
994
|
+
#undef __out
|
|
995
|
+
#undef __inout
|
|
996
|
+
#undef __in_opt
|
|
997
|
+
#undef __out_opt
|
|
998
|
+
#undef __inout_opt
|
|
999
|
+
#undef __deref_out
|
|
1000
|
+
#undef __deref_opt_out
|
|
1001
|
+
#undef __deref_out_opt
|
|
1002
|
+
#undef __in_ecount
|
|
1003
|
+
#undef __out_ecount
|
|
1004
|
+
#undef __inout_ecount
|
|
1005
|
+
#undef __in_ecount_opt
|
|
1006
|
+
#undef __out_ecount_opt
|
|
1007
|
+
#undef __inout_ecount_opt
|
|
1008
|
+
#undef __in_bcount
|
|
1009
|
+
#undef __out_bcount
|
|
1010
|
+
#undef __inout_bcount
|
|
1011
|
+
#undef __in_bcount_opt
|
|
1012
|
+
#undef __out_bcount_opt
|
|
1013
|
+
#undef __inout_bcount_opt
|
|
1014
|
+
#undef __out_xcount
|
|
1015
|
+
#endif /* !WINDOWS && !WIN32 ... */
|
|
1016
|
+
|
|
1017
|
+
#ifdef __SQLUCODE
|
|
1018
|
+
#undef __SQLUCODE
|
|
1019
|
+
#endif
|
|
1020
|
+
|
|
1021
|
+
#if !defined(WINDOWS) && !defined(WIN32) && !defined(SQLWINT)
|
|
1022
|
+
#undef GUID
|
|
1023
|
+
#ifdef __DUMMYCHAR
|
|
1024
|
+
#undef CHAR
|
|
1025
|
+
#undef __DUMMYCHAR
|
|
1026
|
+
#endif
|
|
1027
|
+
#endif
|
|
1028
|
+
|
|
1029
|
+
#undef SQL_C_BOOKMARK
|
|
1030
|
+
#ifdef ODBC64
|
|
1031
|
+
#define SQL_C_BOOKMARK SQL_C_UBIGINT /* BOOKMARK */
|
|
1032
|
+
#else
|
|
1033
|
+
#define SQL_C_BOOKMARK SQL_C_ULONG /* BOOKMARK */
|
|
1034
|
+
#endif
|
|
1035
|
+
|
|
1036
|
+
|
|
1037
|
+
#ifdef DB2_WINSOCKAPI_
|
|
1038
|
+
#undef _WINSOCKAPI_
|
|
1039
|
+
#undef DB2_WINSOCKAPI_
|
|
1040
|
+
#endif
|
|
1041
|
+
|
|
1042
|
+
#endif /* SQL_H_SQLCLI */
|