source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/odbcss.h@ 1180

Last change on this file since 1180 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 17.4 KB
Line 
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 __ODBCSS
7#define __ODBCSS
8
9#include <_mingw_unicode.h>
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15#define SQL_MAX_SQLSERVERNAME 128
16
17#define SQL_COPT_SS_BASE 1200
18#define SQL_COPT_SS_REMOTE_PWD (SQL_COPT_SS_BASE+1)
19#define SQL_COPT_SS_USE_PROC_FOR_PREP (SQL_COPT_SS_BASE+2)
20#define SQL_COPT_SS_INTEGRATED_SECURITY (SQL_COPT_SS_BASE+3)
21#define SQL_COPT_SS_PRESERVE_CURSORS (SQL_COPT_SS_BASE+4)
22#define SQL_COPT_SS_USER_DATA (SQL_COPT_SS_BASE+5)
23#define SQL_COPT_SS_ENLIST_IN_DTC SQL_ATTR_ENLIST_IN_DTC
24#define SQL_COPT_SS_ENLIST_IN_XA SQL_ATTR_ENLIST_IN_XA
25
26#define SQL_COPT_SS_FALLBACK_CONNECT (SQL_COPT_SS_BASE+10)
27#define SQL_COPT_SS_PERF_DATA (SQL_COPT_SS_BASE+11)
28#define SQL_COPT_SS_PERF_DATA_LOG (SQL_COPT_SS_BASE+12)
29#define SQL_COPT_SS_PERF_QUERY_INTERVAL (SQL_COPT_SS_BASE+13)
30#define SQL_COPT_SS_PERF_QUERY_LOG (SQL_COPT_SS_BASE+14)
31#define SQL_COPT_SS_PERF_QUERY (SQL_COPT_SS_BASE+15)
32#define SQL_COPT_SS_PERF_DATA_LOG_NOW (SQL_COPT_SS_BASE+16)
33#define SQL_COPT_SS_QUOTED_IDENT (SQL_COPT_SS_BASE+17)
34#define SQL_COPT_SS_ANSI_NPW (SQL_COPT_SS_BASE+18)
35#define SQL_COPT_SS_BCP (SQL_COPT_SS_BASE+19)
36#define SQL_COPT_SS_TRANSLATE (SQL_COPT_SS_BASE+20)
37#define SQL_COPT_SS_ATTACHDBFILENAME (SQL_COPT_SS_BASE+21)
38#define SQL_COPT_SS_CONCAT_NULL (SQL_COPT_SS_BASE+22)
39#define SQL_COPT_SS_ENCRYPT (SQL_COPT_SS_BASE+23)
40
41#define SQL_COPT_SS_MAX_USED SQL_COPT_SS_ENCRYPT
42
43#define SQL_SOPT_SS_BASE 1225
44#define SQL_SOPT_SS_TEXTPTR_LOGGING (SQL_SOPT_SS_BASE+0)
45#define SQL_SOPT_SS_CURRENT_COMMAND (SQL_SOPT_SS_BASE+1)
46#define SQL_SOPT_SS_HIDDEN_COLUMNS (SQL_SOPT_SS_BASE+2)
47#define SQL_SOPT_SS_NOBROWSETABLE (SQL_SOPT_SS_BASE+3)
48#define SQL_SOPT_SS_REGIONALIZE (SQL_SOPT_SS_BASE+4)
49#define SQL_SOPT_SS_CURSOR_OPTIONS (SQL_SOPT_SS_BASE+5)
50#define SQL_SOPT_SS_NOCOUNT_STATUS (SQL_SOPT_SS_BASE+6)
51#define SQL_SOPT_SS_DEFER_PREPARE (SQL_SOPT_SS_BASE+7)
52
53#define SQL_SOPT_SS_MAX_USED SQL_SOPT_SS_DEFER_PREPARE
54
55#define SQL_COPT_SS_BASE_EX 1240
56#define SQL_COPT_SS_BROWSE_CONNECT (SQL_COPT_SS_BASE_EX+1)
57#define SQL_COPT_SS_BROWSE_SERVER (SQL_COPT_SS_BASE_EX+2)
58#define SQL_COPT_SS_WARN_ON_CP_ERROR (SQL_COPT_SS_BASE_EX+3)
59
60#define SQL_COPT_SS_CONNECTION_DEAD (SQL_COPT_SS_BASE_EX+4)
61
62#define SQL_COPT_SS_BROWSE_CACHE_DATA (SQL_COPT_SS_BASE_EX+5)
63
64#define SQL_COPT_SS_RESET_CONNECTION (SQL_COPT_SS_BASE_EX+6)
65
66#define SQL_COPT_SS_EX_MAX_USED SQL_COPT_SS_RESET_CONNECTION
67
68#define SQL_UP_OFF __MSABI_LONG(0)
69#define SQL_UP_ON __MSABI_LONG(1)
70#define SQL_UP_ON_DROP __MSABI_LONG(2)
71#define SQL_UP_DEFAULT SQL_UP_ON
72
73#define SQL_IS_OFF __MSABI_LONG(0)
74#define SQL_IS_ON __MSABI_LONG(1)
75#define SQL_IS_DEFAULT SQL_IS_OFF
76
77#define SQL_PC_OFF __MSABI_LONG(0)
78#define SQL_PC_ON __MSABI_LONG(1)
79#define SQL_PC_DEFAULT SQL_PC_OFF
80
81#define SQL_UD_NOTSET NULL
82
83#define SQL_XL_OFF __MSABI_LONG(0)
84#define SQL_XL_ON __MSABI_LONG(1)
85#define SQL_XL_DEFAULT SQL_XL_ON
86
87#define SQL_FB_OFF __MSABI_LONG(0)
88#define SQL_FB_ON __MSABI_LONG(1)
89#define SQL_FB_DEFAULT SQL_FB_OFF
90
91#define SQL_BCP_OFF __MSABI_LONG(0)
92#define SQL_BCP_ON __MSABI_LONG(1)
93#define SQL_BCP_DEFAULT SQL_BCP_OFF
94
95#define SQL_QI_OFF __MSABI_LONG(0)
96#define SQL_QI_ON __MSABI_LONG(1)
97#define SQL_QI_DEFAULT SQL_QI_ON
98
99#define SQL_AD_OFF __MSABI_LONG(0)
100#define SQL_AD_ON __MSABI_LONG(1)
101#define SQL_AD_DEFAULT SQL_AD_ON
102
103#define SQL_CN_OFF __MSABI_LONG(0)
104#define SQL_CN_ON __MSABI_LONG(1)
105#define SQL_CN_DEFAULT SQL_CN_ON
106
107#define SQL_TL_OFF __MSABI_LONG(0)
108#define SQL_TL_ON __MSABI_LONG(1)
109#define SQL_TL_DEFAULT SQL_TL_ON
110
111#define SQL_HC_OFF __MSABI_LONG(0)
112#define SQL_HC_ON __MSABI_LONG(1)
113#define SQL_HC_DEFAULT SQL_HC_OFF
114
115#define SQL_NB_OFF __MSABI_LONG(0)
116#define SQL_NB_ON __MSABI_LONG(1)
117#define SQL_NB_DEFAULT SQL_NB_OFF
118
119#define SQL_RE_OFF __MSABI_LONG(0)
120#define SQL_RE_ON __MSABI_LONG(1)
121#define SQL_RE_DEFAULT SQL_RE_OFF
122
123#define SQL_CO_OFF __MSABI_LONG(0)
124#define SQL_CO_FFO __MSABI_LONG(1)
125#define SQL_CO_AF __MSABI_LONG(2)
126#define SQL_CO_FFO_AF (SQL_CO_FFO|SQL_CO_AF)
127#define SQL_CO_FIREHOSE_AF __MSABI_LONG(4)
128#define SQL_CO_DEFAULT SQL_CO_OFF
129
130#define SQL_NC_OFF __MSABI_LONG(0)
131#define SQL_NC_ON __MSABI_LONG(1)
132
133#define SQL_DP_OFF __MSABI_LONG(0)
134#define SQL_DP_ON __MSABI_LONG(1)
135
136#define SQL_EN_OFF __MSABI_LONG(0)
137#define SQL_EN_ON __MSABI_LONG(1)
138
139#define SQL_MORE_INFO_NO __MSABI_LONG(0)
140#define SQL_MORE_INFO_YES __MSABI_LONG(1)
141
142#define SQL_CACHE_DATA_NO __MSABI_LONG(0)
143#define SQL_CACHE_DATA_YES __MSABI_LONG(1)
144
145#define SQL_RESET_YES __MSABI_LONG(1)
146
147#define SQL_WARN_NO __MSABI_LONG(0)
148#define SQL_WARN_YES __MSABI_LONG(1)
149
150#define SQL_CURSOR_FAST_FORWARD_ONLY 8
151
152#define SQL_CA_SS_BASE 1200
153#define SQL_CA_SS_COLUMN_SSTYPE (SQL_CA_SS_BASE+0)
154#define SQL_CA_SS_COLUMN_UTYPE (SQL_CA_SS_BASE+1)
155#define SQL_CA_SS_NUM_ORDERS (SQL_CA_SS_BASE+2)
156#define SQL_CA_SS_COLUMN_ORDER (SQL_CA_SS_BASE+3)
157#define SQL_CA_SS_COLUMN_VARYLEN (SQL_CA_SS_BASE+4)
158#define SQL_CA_SS_NUM_COMPUTES (SQL_CA_SS_BASE+5)
159#define SQL_CA_SS_COMPUTE_ID (SQL_CA_SS_BASE+6)
160#define SQL_CA_SS_COMPUTE_BYLIST (SQL_CA_SS_BASE+7)
161#define SQL_CA_SS_COLUMN_ID (SQL_CA_SS_BASE+8)
162#define SQL_CA_SS_COLUMN_OP (SQL_CA_SS_BASE+9)
163#define SQL_CA_SS_COLUMN_SIZE (SQL_CA_SS_BASE+10)
164#define SQL_CA_SS_COLUMN_HIDDEN (SQL_CA_SS_BASE+11)
165#define SQL_CA_SS_COLUMN_KEY (SQL_CA_SS_BASE+12)
166
167#define SQL_CA_SS_COLUMN_COLLATION (SQL_CA_SS_BASE+14)
168#define SQL_CA_SS_VARIANT_TYPE (SQL_CA_SS_BASE+15)
169#define SQL_CA_SS_VARIANT_SQL_TYPE (SQL_CA_SS_BASE+16)
170#define SQL_CA_SS_VARIANT_SERVER_TYPE (SQL_CA_SS_BASE+17)
171#define SQL_CA_SS_MAX_USED (SQL_CA_SS_BASE+18)
172
173#define SQLTEXT 0x23
174#define SQLVARBINARY 0x25
175#define SQLINTN 0x26
176#define SQLVARCHAR 0x27
177#define SQLBINARY 0x2d
178#define SQLIMAGE 0x22
179#define SQLCHARACTER 0x2f
180#define SQLINT1 0x30
181#define SQLBIT 0x32
182#define SQLINT2 0x34
183#define SQLINT4 0x38
184#define SQLMONEY 0x3c
185#define SQLDATETIME 0x3d
186#define SQLFLT8 0x3e
187#define SQLFLTN 0x6d
188#define SQLMONEYN 0x6e
189#define SQLDATETIMN 0x6f
190#define SQLFLT4 0x3b
191#define SQLMONEY4 0x7a
192#define SQLDATETIM4 0x3a
193
194#define SQLDECIMAL 0x6a
195#define SQLNUMERIC 0x6c
196
197#define SQLUNIQUEID 0x24
198#define SQLBIGCHAR 0xaf
199#define SQLBIGVARCHAR 0xa7
200#define SQLBIGBINARY 0xad
201#define SQLBIGVARBINARY 0xa5
202#define SQLBITN 0x68
203#define SQLNCHAR 0xef
204#define SQLNVARCHAR 0xe7
205#define SQLNTEXT 0x63
206
207#define SQLINT8 0x7f
208#define SQLVARIANT 0x62
209
210#define SQLudtBINARY 3
211#define SQLudtBIT 16
212#define SQLudtBITN 0
213#define SQLudtCHAR 1
214#define SQLudtDATETIM4 22
215#define SQLudtDATETIME 12
216#define SQLudtDATETIMN 15
217#define SQLudtDECML 24
218#define SQLudtDECMLN 26
219#define SQLudtFLT4 23
220#define SQLudtFLT8 8
221#define SQLudtFLTN 14
222#define SQLudtIMAGE 20
223#define SQLudtINT1 5
224#define SQLudtINT2 6
225#define SQLudtINT4 7
226#define SQLudtINTN 13
227#define SQLudtMONEY 11
228#define SQLudtMONEY4 21
229#define SQLudtMONEYN 17
230#define SQLudtNUM 10
231#define SQLudtNUMN 25
232#define SQLudtSYSNAME 18
233#define SQLudtTEXT 19
234#define SQLudtTIMESTAMP 80
235#define SQLudtUNIQUEIDENTIFIER 0
236#define SQLudtVARBINARY 4
237#define SQLudtVARCHAR 2
238#define MIN_USER_DATATYPE 256
239
240#define SQLAOPSTDEV 0x30
241#define SQLAOPSTDEVP 0x31
242#define SQLAOPVAR 0x32
243#define SQLAOPVARP 0x33
244#define SQLAOPCNT 0x4b
245#define SQLAOPSUM 0x4d
246#define SQLAOPAVG 0x4f
247#define SQLAOPMIN 0x51
248#define SQLAOPMAX 0x52
249#define SQLAOPANY 0x53
250#define SQLAOPNOOP 0x56
251
252#define SQL_INFO_SS_FIRST 1199
253#define SQL_INFO_SS_NETLIB_NAMEW (SQL_INFO_SS_FIRST+0)
254#define SQL_INFO_SS_NETLIB_NAMEA (SQL_INFO_SS_FIRST+1)
255#define SQL_INFO_SS_MAX_USED SQL_INFO_SS_NETLIB_NAMEA
256
257#define SQL_INFO_SS_NETLIB_NAME __MINGW_NAME_AW(SQL_INFO_SS_NETLIB_NAME)
258
259#define SQL_SS_VARIANT -150
260
261#define SQL_DIAG_SS_BASE (-1150)
262#define SQL_DIAG_SS_MSGSTATE (SQL_DIAG_SS_BASE)
263#define SQL_DIAG_SS_SEVERITY (SQL_DIAG_SS_BASE-1)
264#define SQL_DIAG_SS_SRVNAME (SQL_DIAG_SS_BASE-2)
265#define SQL_DIAG_SS_PROCNAME (SQL_DIAG_SS_BASE-3)
266#define SQL_DIAG_SS_LINE (SQL_DIAG_SS_BASE-4)
267
268#define SQL_DIAG_DFC_SS_BASE (-200)
269#define SQL_DIAG_DFC_SS_ALTER_DATABASE (SQL_DIAG_DFC_SS_BASE-0)
270#define SQL_DIAG_DFC_SS_CHECKPOINT (SQL_DIAG_DFC_SS_BASE-1)
271#define SQL_DIAG_DFC_SS_CONDITION (SQL_DIAG_DFC_SS_BASE-2)
272#define SQL_DIAG_DFC_SS_CREATE_DATABASE (SQL_DIAG_DFC_SS_BASE-3)
273#define SQL_DIAG_DFC_SS_CREATE_DEFAULT (SQL_DIAG_DFC_SS_BASE-4)
274#define SQL_DIAG_DFC_SS_CREATE_PROCEDURE (SQL_DIAG_DFC_SS_BASE-5)
275#define SQL_DIAG_DFC_SS_CREATE_RULE (SQL_DIAG_DFC_SS_BASE-6)
276#define SQL_DIAG_DFC_SS_CREATE_TRIGGER (SQL_DIAG_DFC_SS_BASE-7)
277#define SQL_DIAG_DFC_SS_CURSOR_DECLARE (SQL_DIAG_DFC_SS_BASE-8)
278#define SQL_DIAG_DFC_SS_CURSOR_OPEN (SQL_DIAG_DFC_SS_BASE-9)
279#define SQL_DIAG_DFC_SS_CURSOR_FETCH (SQL_DIAG_DFC_SS_BASE-10)
280#define SQL_DIAG_DFC_SS_CURSOR_CLOSE (SQL_DIAG_DFC_SS_BASE-11)
281#define SQL_DIAG_DFC_SS_DEALLOCATE_CURSOR (SQL_DIAG_DFC_SS_BASE-12)
282#define SQL_DIAG_DFC_SS_DBCC (SQL_DIAG_DFC_SS_BASE-13)
283#define SQL_DIAG_DFC_SS_DISK (SQL_DIAG_DFC_SS_BASE-14)
284#define SQL_DIAG_DFC_SS_DROP_DATABASE (SQL_DIAG_DFC_SS_BASE-15)
285#define SQL_DIAG_DFC_SS_DROP_DEFAULT (SQL_DIAG_DFC_SS_BASE-16)
286#define SQL_DIAG_DFC_SS_DROP_PROCEDURE (SQL_DIAG_DFC_SS_BASE-17)
287#define SQL_DIAG_DFC_SS_DROP_RULE (SQL_DIAG_DFC_SS_BASE-18)
288#define SQL_DIAG_DFC_SS_DROP_TRIGGER (SQL_DIAG_DFC_SS_BASE-19)
289#define SQL_DIAG_DFC_SS_DUMP_DATABASE (SQL_DIAG_DFC_SS_BASE-20)
290#define SQL_DIAG_DFC_SS_DUMP_TABLE (SQL_DIAG_DFC_SS_BASE-21)
291#define SQL_DIAG_DFC_SS_DUMP_TRANSACTION (SQL_DIAG_DFC_SS_BASE-22)
292#define SQL_DIAG_DFC_SS_GOTO (SQL_DIAG_DFC_SS_BASE-23)
293#define SQL_DIAG_DFC_SS_INSERT_BULK (SQL_DIAG_DFC_SS_BASE-24)
294#define SQL_DIAG_DFC_SS_KILL (SQL_DIAG_DFC_SS_BASE-25)
295#define SQL_DIAG_DFC_SS_LOAD_DATABASE (SQL_DIAG_DFC_SS_BASE-26)
296#define SQL_DIAG_DFC_SS_LOAD_HEADERONLY (SQL_DIAG_DFC_SS_BASE-27)
297#define SQL_DIAG_DFC_SS_LOAD_TABLE (SQL_DIAG_DFC_SS_BASE-28)
298#define SQL_DIAG_DFC_SS_LOAD_TRANSACTION (SQL_DIAG_DFC_SS_BASE-29)
299#define SQL_DIAG_DFC_SS_PRINT (SQL_DIAG_DFC_SS_BASE-30)
300#define SQL_DIAG_DFC_SS_RAISERROR (SQL_DIAG_DFC_SS_BASE-31)
301#define SQL_DIAG_DFC_SS_READTEXT (SQL_DIAG_DFC_SS_BASE-32)
302#define SQL_DIAG_DFC_SS_RECONFIGURE (SQL_DIAG_DFC_SS_BASE-33)
303#define SQL_DIAG_DFC_SS_RETURN (SQL_DIAG_DFC_SS_BASE-34)
304#define SQL_DIAG_DFC_SS_SELECT_INTO (SQL_DIAG_DFC_SS_BASE-35)
305#define SQL_DIAG_DFC_SS_SET (SQL_DIAG_DFC_SS_BASE-36)
306#define SQL_DIAG_DFC_SS_SET_IDENTITY_INSERT (SQL_DIAG_DFC_SS_BASE-37)
307#define SQL_DIAG_DFC_SS_SET_ROW_COUNT (SQL_DIAG_DFC_SS_BASE-38)
308#define SQL_DIAG_DFC_SS_SET_STATISTICS (SQL_DIAG_DFC_SS_BASE-39)
309#define SQL_DIAG_DFC_SS_SET_TEXTSIZE (SQL_DIAG_DFC_SS_BASE-40)
310#define SQL_DIAG_DFC_SS_SETUSER (SQL_DIAG_DFC_SS_BASE-41)
311#define SQL_DIAG_DFC_SS_SHUTDOWN (SQL_DIAG_DFC_SS_BASE-42)
312#define SQL_DIAG_DFC_SS_TRANS_BEGIN (SQL_DIAG_DFC_SS_BASE-43)
313#define SQL_DIAG_DFC_SS_TRANS_COMMIT (SQL_DIAG_DFC_SS_BASE-44)
314#define SQL_DIAG_DFC_SS_TRANS_PREPARE (SQL_DIAG_DFC_SS_BASE-45)
315#define SQL_DIAG_DFC_SS_TRANS_ROLLBACK (SQL_DIAG_DFC_SS_BASE-46)
316#define SQL_DIAG_DFC_SS_TRANS_SAVE (SQL_DIAG_DFC_SS_BASE-47)
317#define SQL_DIAG_DFC_SS_TRUNCATE_TABLE (SQL_DIAG_DFC_SS_BASE-48)
318#define SQL_DIAG_DFC_SS_UPDATE_STATISTICS (SQL_DIAG_DFC_SS_BASE-49)
319#define SQL_DIAG_DFC_SS_UPDATETEXT (SQL_DIAG_DFC_SS_BASE-50)
320#define SQL_DIAG_DFC_SS_USE (SQL_DIAG_DFC_SS_BASE-51)
321#define SQL_DIAG_DFC_SS_WAITFOR (SQL_DIAG_DFC_SS_BASE-52)
322#define SQL_DIAG_DFC_SS_WRITETEXT (SQL_DIAG_DFC_SS_BASE-53)
323#define SQL_DIAG_DFC_SS_DENY (SQL_DIAG_DFC_SS_BASE-54)
324#define SQL_DIAG_DFC_SS_SET_XCTLVL (SQL_DIAG_DFC_SS_BASE-55)
325
326#define EX_ANY 0
327#define EX_INFO 10
328#define EX_MAXISEVERITY EX_INFO
329#define EX_MISSING 11
330#define EX_TYPE 12
331#define EX_DEADLOCK 13
332#define EX_PERMIT 14
333#define EX_SYNTAX 15
334#define EX_USER 16
335#define EX_RESOURCE 17
336#define EX_INTOK 18
337#define MAXUSEVERITY EX_INTOK
338#define EX_LIMIT 19
339#define EX_CMDFATAL 20
340#define MINFATALERR EX_CMDFATAL
341#define EX_DBFATAL 21
342#define EX_TABCORRUPT 22
343#define EX_DBCORRUPT 23
344#define EX_HARDWARE 24
345#define EX_CONTROL 25
346
347#ifndef MAXNUMERICLEN
348
349#define DBMAXCHAR (8000+1)
350#define MAXNAME (SQL_MAX_SQLSERVERNAME+1)
351
352#if defined(UNICODE)
353 typedef wchar_t DBCHAR;
354#else
355 typedef char DBCHAR;
356#endif
357 typedef unsigned char DBBINARY;
358 typedef unsigned char DBTINYINT;
359 typedef short DBSMALLINT;
360 typedef unsigned short DBUSMALLINT;
361 typedef double DBFLT8;
362 typedef unsigned char DBBIT;
363 typedef unsigned char DBBOOL;
364 typedef float DBFLT4;
365 typedef DBFLT4 DBREAL;
366 typedef UINT DBUBOOL;
367
368 typedef struct dbvarychar {
369 DBSMALLINT len;
370 DBCHAR str[DBMAXCHAR];
371 } DBVARYCHAR;
372
373 typedef struct dbvarybin {
374 DBSMALLINT len;
375 BYTE array[DBMAXCHAR];
376 } DBVARYBIN;
377
378 typedef struct dbmoney {
379 LONG mnyhigh;
380 ULONG mnylow;
381 } DBMONEY;
382
383 typedef struct dbdatetime {
384 LONG dtdays;
385 ULONG dttime;
386 } DBDATETIME;
387
388 typedef struct dbdatetime4 {
389 USHORT numdays;
390 USHORT nummins;
391 } DBDATETIM4;
392
393 typedef LONG DBMONEY4;
394
395#define DBNUM_PREC_TYPE BYTE
396#define DBNUM_SCALE_TYPE BYTE
397#define DBNUM_VAL_TYPE BYTE
398
399#if (ODBCVER < 0x0300)
400#define MAXNUMERICLEN 16
401
402 typedef struct dbnumeric {
403 DBNUM_PREC_TYPE precision;
404 DBNUM_SCALE_TYPE scale;
405 BYTE sign;
406 DBNUM_VAL_TYPE val[MAXNUMERICLEN];
407 } DBNUMERIC;
408 typedef DBNUMERIC DBDECIMAL;
409#else
410#define MAXNUMERICLEN SQL_MAX_NUMERIC_LEN
411 typedef SQL_NUMERIC_STRUCT DBNUMERIC;
412 typedef SQL_NUMERIC_STRUCT DBDECIMAL;
413#endif
414#endif
415
416#ifndef INT
417 typedef int INT;
418 typedef __LONG32 DBINT;
419#ifndef _LPCBYTE_DEFINED
420#define _LPCBYTE_DEFINED
421 typedef const LPBYTE LPCBYTE;
422#endif
423 typedef DBINT *LPDBINT;
424#endif
425
426 typedef struct sqlperf {
427 DWORD TimerResolution;
428 DWORD SQLidu;
429 DWORD SQLiduRows;
430 DWORD SQLSelects;
431 DWORD SQLSelectRows;
432 DWORD Transactions;
433 DWORD SQLPrepares;
434 DWORD ExecDirects;
435 DWORD SQLExecutes;
436 DWORD CursorOpens;
437 DWORD CursorSize;
438 DWORD CursorUsed;
439 LDOUBLE PercentCursorUsed;
440 LDOUBLE AvgFetchTime;
441 LDOUBLE AvgCursorSize;
442 LDOUBLE AvgCursorUsed;
443 DWORD SQLFetchTime;
444 DWORD SQLFetchCount;
445 DWORD CurrentStmtCount;
446 DWORD MaxOpenStmt;
447 DWORD SumOpenStmt;
448 DWORD CurrentConnectionCount;
449 DWORD MaxConnectionsOpened;
450 DWORD SumConnectionsOpened;
451 DWORD SumConnectiontime;
452 LDOUBLE AvgTimeOpened;
453 DWORD ServerRndTrips;
454 DWORD BuffersSent;
455 DWORD BuffersRec;
456 DWORD BytesSent;
457 DWORD BytesRec;
458 DWORD msExecutionTime;
459 DWORD msNetWorkServerTime;
460 } SQLPERF;
461
462#define SQL_PERF_START 1
463#define SQL_PERF_STOP 2
464
465#define SQL_SS_DL_DEFAULT TEXT("STATS.LOG")
466#define SQL_SS_QL_DEFAULT TEXT("QUERY.LOG")
467#define SQL_SS_QI_DEFAULT 30000
468
469#define SUCCEED 1
470#define FAIL 0
471#define SUCCEED_ABORT 2
472#define SUCCEED_ASYNC 3
473
474#define DB_IN 1
475#define DB_OUT 2
476
477#define BCPMAXERRS 1
478#define BCPFIRST 2
479#define BCPLAST 3
480#define BCPBATCH 4
481#define BCPKEEPNULLS 5
482#define BCPABORT 6
483#define BCPODBC 7
484#define BCPKEEPIDENTITY 8
485#define BCP6xFILEFMT 9
486#define BCPHINTSA 10
487#define BCPHINTSW 11
488#define BCPFILECP 12
489#define BCPUNICODEFILE 13
490#define BCPTEXTFILE 14
491#define BCPFILEFMT 15
492
493#define BCPFILECP_ACP 0
494#define BCPFILECP_OEMCP 1
495#define BCPFILECP_RAW (-1)
496
497#define SQL_VARLEN_DATA (-10)
498
499 DBINT SQL_API bcp_batch(HDBC);
500 RETCODE SQL_API bcp_bind(HDBC,LPCBYTE,INT,DBINT,LPCBYTE,INT,INT,INT);
501 RETCODE SQL_API bcp_colfmt(HDBC,INT,BYTE,INT,DBINT,LPCBYTE,INT,INT);
502 RETCODE SQL_API bcp_collen(HDBC,DBINT,INT);
503 RETCODE SQL_API bcp_colptr(HDBC,LPCBYTE,INT);
504 RETCODE SQL_API bcp_columns(HDBC,INT);
505 RETCODE SQL_API bcp_control(HDBC,INT,void *);
506 DBINT SQL_API bcp_done(HDBC);
507 RETCODE SQL_API bcp_exec(HDBC,LPDBINT);
508 RETCODE SQL_API bcp_getcolfmt(HDBC,INT,INT,void *,INT,INT *);
509 RETCODE SQL_API bcp_initA(HDBC,LPCSTR,LPCSTR,LPCSTR,INT);
510 RETCODE SQL_API bcp_initW(HDBC,LPCWSTR,LPCWSTR,LPCWSTR,INT);
511 RETCODE SQL_API bcp_moretext(HDBC,DBINT,LPCBYTE);
512 RETCODE SQL_API bcp_readfmtA(HDBC,LPCSTR);
513 RETCODE SQL_API bcp_readfmtW(HDBC,LPCWSTR);
514 RETCODE SQL_API bcp_sendrow(HDBC);
515 RETCODE SQL_API bcp_setcolfmt(HDBC,INT,INT,void *,INT);
516 RETCODE SQL_API bcp_writefmtA(HDBC,LPCSTR);
517 RETCODE SQL_API bcp_writefmtW(HDBC,LPCWSTR);
518 CHAR *SQL_API dbprtypeA(INT);
519 WCHAR *SQL_API dbprtypeW(INT);
520
521#define bcp_init __MINGW_NAME_AW(bcp_init)
522#define bcp_readfmt __MINGW_NAME_AW(bcp_readfmt)
523#define bcp_writefmt __MINGW_NAME_AW(bcp_writefmt)
524#define dbprtype __MINGW_NAME_AW(dbprtype)
525#define BCPHINTS __MINGW_NAME_AW(BCPHINTS)
526
527 SQLRETURN SQL_API SQLLinkedServers(SQLHSTMT);
528 SQLRETURN SQL_API SQLLinkedCatalogsA(SQLHSTMT,LPCSTR,SWORD);
529 SQLRETURN SQL_API SQLLinkedCatalogsW(SQLHSTMT,LPCWSTR,SWORD);
530 HANDLE SQL_API SQLInitEnumServers(WCHAR *pwchServerName,WCHAR *pwchInstanceName);
531 RETCODE SQL_API SQLGetNextEnumeration(HANDLE hEnumHandle,BYTE *prgEnumData,INT *piEnumLength);
532 RETCODE SQL_API SQLCloseEnumServers(HANDLE hEnumHandle);
533
534#define SQLLinkedCatalogs __MINGW_NAME_AW(SQLLinkedCatalogs)
535
536#define BCP_FMT_TYPE 0x01
537#define BCP_FMT_INDICATOR_LEN 0x02
538#define BCP_FMT_DATA_LEN 0x03
539#define BCP_FMT_TERMINATOR 0x04
540#define BCP_FMT_SERVER_COL 0x05
541#define BCP_FMT_COLLATION 0x06
542#define BCP_FMT_COLLATION_ID 0x07
543
544#define SQL_FAST_CONNECT (SQL_COPT_SS_BASE+0)
545
546#define SQL_FC_OFF __MSABI_LONG(0)
547#define SQL_FC_ON __MSABI_LONG(1)
548#define SQL_FC_DEFAULT SQL_FC_OFF
549#define SQL_COPT_SS_ANSI_OEM (SQL_COPT_SS_BASE+6)
550#define SQL_AO_OFF __MSABI_LONG(0)
551#define SQL_AO_ON __MSABI_LONG(1)
552#define SQL_AO_DEFAULT SQL_AO_OFF
553
554#define SQL_REMOTE_PWD SQL_COPT_SS_REMOTE_PWD
555#define SQL_USE_PROCEDURE_FOR_PREPARE SQL_COPT_SS_USE_PROC_FOR_PREP
556#define SQL_INTEGRATED_SECURITY SQL_COPT_SS_INTEGRATED_SECURITY
557#define SQL_PRESERVE_CURSORS SQL_COPT_SS_PRESERVE_CURSORS
558#define SQL_TEXTPTR_LOGGING SQL_SOPT_SS_TEXTPTR_LOGGING
559#define SQL_CA_SS_BASE_COLUMN_NAME SQL_DESC_BASE_COLUMN_NAME
560#define SQLDECIMALN 0x6a
561#define SQLNUMERICN 0x6c
562
563#ifdef __cplusplus
564}
565#endif
566#endif
Note: See TracBrowser for help on using the repository browser.