comparison fuhtark_test/include/winapi/odbcss.h @ 1500:91c8c3b7cbf0

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