27 unsigned char precision;
29 unsigned char array[33];
58 TDS_USMALLINT minutes;
69 typedef TDS_INT TDS_DATE;
70 typedef TDS_INT TDS_TIME;
72 typedef TDS_UINT8 TDS_BIGTIME;
73 typedef TDS_UINT8 TDS_BIGDATETIME;
75 #define TDS5_PARAMFMT2_TOKEN 32
76 #define TDS_LANGUAGE_TOKEN 33
77 #define TDS_ORDERBY2_TOKEN 34
78 #define TDS_ROWFMT2_TOKEN 97
79 #define TDS_LOGOUT_TOKEN 113
80 #define TDS_RETURNSTATUS_TOKEN 121
81 #define TDS_PROCID_TOKEN 124
82 #define TDS7_RESULT_TOKEN 129
83 #define TDS7_COMPUTE_RESULT_TOKEN 136
84 #define TDS_COLNAME_TOKEN 160
85 #define TDS_COLFMT_TOKEN 161
86 #define TDS_DYNAMIC2_TOKEN 163
87 #define TDS_TABNAME_TOKEN 164
88 #define TDS_COLINFO_TOKEN 165
89 #define TDS_OPTIONCMD_TOKEN 166
90 #define TDS_COMPUTE_NAMES_TOKEN 167
91 #define TDS_COMPUTE_RESULT_TOKEN 168
92 #define TDS_ORDERBY_TOKEN 169
93 #define TDS_ERROR_TOKEN 170
94 #define TDS_INFO_TOKEN 171
95 #define TDS_PARAM_TOKEN 172
96 #define TDS_LOGINACK_TOKEN 173
97 #define TDS_CONTROL_FEATUREEXTACK_TOKEN \
99 #define TDS_ROW_TOKEN 209
100 #define TDS_NBC_ROW_TOKEN 210
101 #define TDS_CMP_ROW_TOKEN 211
102 #define TDS5_PARAMS_TOKEN 215
103 #define TDS_CAPABILITY_TOKEN 226
104 #define TDS_ENVCHANGE_TOKEN 227
105 #define TDS_SESSIONSTATE_TOKEN 228
106 #define TDS_EED_TOKEN 229
107 #define TDS_DBRPC_TOKEN 230
108 #define TDS5_DYNAMIC_TOKEN 231
109 #define TDS5_PARAMFMT_TOKEN 236
110 #define TDS_AUTH_TOKEN 237
111 #define TDS_RESULT_TOKEN 238
112 #define TDS_DONE_TOKEN 253
113 #define TDS_DONEPROC_TOKEN 254
114 #define TDS_DONEINPROC_TOKEN 255
117 #define TDS_CURCLOSE_TOKEN 128
118 #define TDS_CURDELETE_TOKEN 129
119 #define TDS_CURFETCH_TOKEN 130
120 #define TDS_CURINFO_TOKEN 131
121 #define TDS_CUROPEN_TOKEN 132
122 #define TDS_CURDECLARE_TOKEN 134
126 #define TDS_ENV_DATABASE 1
127 #define TDS_ENV_LANG 2
128 #define TDS_ENV_CHARSET 3
129 #define TDS_ENV_PACKSIZE 4
130 #define TDS_ENV_LCID 5
131 #define TDS_ENV_SQLCOLLATION 7
132 #define TDS_ENV_BEGINTRANS 8
133 #define TDS_ENV_COMMITTRANS 9
134 #define TDS_ENV_ROLLBACKTRANS 10
137 #define TDS_SP_CURSOR 1
138 #define TDS_SP_CURSOROPEN 2
139 #define TDS_SP_CURSORPREPARE 3
140 #define TDS_SP_CURSOREXECUTE 4
141 #define TDS_SP_CURSORPREPEXEC 5
142 #define TDS_SP_CURSORUNPREPARE 6
143 #define TDS_SP_CURSORFETCH 7
144 #define TDS_SP_CURSOROPTION 8
145 #define TDS_SP_CURSORCLOSE 9
146 #define TDS_SP_EXECUTESQL 10
147 #define TDS_SP_PREPARE 11
148 #define TDS_SP_EXECUTE 12
149 #define TDS_SP_PREPEXEC 13
150 #define TDS_SP_PREPEXECRPC 14
151 #define TDS_SP_UNPREPARE 15
204 SYBMSDATETIMEOFFSET = 43,
221 SYBSENSITIVITY = 103,
228 SYB5BIGDATETIME = 187,
235 USER_UNICHAR_TYPE = 34,
236 USER_UNIVARCHAR_TYPE = 35
240 #define SYBAOPCNT 0x4b
241 #define SYBAOPCNTU 0x4c
242 #define SYBAOPSUM 0x4d
243 #define SYBAOPSUMU 0x4e
244 #define SYBAOPAVG 0x4f
245 #define SYBAOPAVGU 0x50
246 #define SYBAOPMIN 0x51
247 #define SYBAOPMAX 0x52
250 #define SYBAOPCNT_BIG 0x09
251 #define SYBAOPSTDEV 0x30
252 #define SYBAOPSTDEVP 0x31
253 #define SYBAOPVAR 0x32
254 #define SYBAOPVARP 0x33
255 #define SYBAOPCHECKSUM_AGG 0x72
263 , TDS_OPT_DEFAULT = 2
270 TDS_OPT_DATEFIRST = 1
271 , TDS_OPT_TEXTSIZE = 2
272 , TDS_OPT_STAT_TIME = 3
273 , TDS_OPT_STAT_IO = 4
274 , TDS_OPT_ROWCOUNT = 5
275 , TDS_OPT_NATLANG = 6
276 , TDS_OPT_DATEFORMAT = 7
277 , TDS_OPT_ISOLATION = 8
279 , TDS_OPT_CHARSET = 10
280 , TDS_OPT_SHOWPLAN = 13
281 , TDS_OPT_NOEXEC = 14
282 , TDS_OPT_ARITHIGNOREON = 15
283 , TDS_OPT_ARITHABORTON = 17
284 , TDS_OPT_PARSEONLY = 18
285 , TDS_OPT_GETDATA = 20
286 , TDS_OPT_NOCOUNT = 21
287 , TDS_OPT_FORCEPLAN = 23
288 , TDS_OPT_FORMATONLY = 24
289 , TDS_OPT_CHAINXACTS = 25
290 , TDS_OPT_CURCLOSEONXACT = 26
291 , TDS_OPT_FIPSFLAG = 27
292 , TDS_OPT_RESTREES = 28
293 , TDS_OPT_IDENTITYON = 29
294 , TDS_OPT_CURREAD = 30
295 , TDS_OPT_CURWRITE = 31
296 , TDS_OPT_IDENTITYOFF = 32
297 , TDS_OPT_AUTHOFF = 33
298 , TDS_OPT_ANSINULL = 34
299 , TDS_OPT_QUOTED_IDENT = 35
300 , TDS_OPT_ARITHIGNOREOFF = 36
301 , TDS_OPT_ARITHABORTOFF = 37
302 , TDS_OPT_TRUNCABORT = 38
306 TDS_OPT_ARITHOVERFLOW = 0x01,
307 TDS_OPT_NUMERICTRUNC = 0x02
310 enum TDS_OPT_DATEFIRST_CHOICE
312 TDS_OPT_MONDAY = 1, TDS_OPT_TUESDAY = 2, TDS_OPT_WEDNESDAY = 3, TDS_OPT_THURSDAY = 4, TDS_OPT_FRIDAY = 5, TDS_OPT_SATURDAY =
313 6, TDS_OPT_SUNDAY = 7
316 enum TDS_OPT_DATEFORMAT_CHOICE
318 TDS_OPT_FMTMDY = 1, TDS_OPT_FMTDMY = 2, TDS_OPT_FMTYMD = 3, TDS_OPT_FMTYDM = 4, TDS_OPT_FMTMYD = 5, TDS_OPT_FMTDYM = 6
320 enum TDS_OPT_ISOLATION_CHOICE
322 TDS_OPT_LEVEL1 = 1, TDS_OPT_LEVEL3 = 3
326 typedef enum tds_packet_type
347 TDS_USMALLINT locale_id;
349 TDS_UCHAR charset_id;
373 #define TDS_SF_BIN (TDS_USMALLINT) 0x100
374 #define TDS_SF_WIDTH_INSENSITIVE (TDS_USMALLINT) 0x080
375 #define TDS_SF_KATATYPE_INSENSITIVE (TDS_USMALLINT) 0x040
376 #define TDS_SF_ACCENT_SENSITIVE (TDS_USMALLINT) 0x020
377 #define TDS_SF_CASE_INSENSITIVE (TDS_USMALLINT) 0x010
380 #define TDS_UT_TIMESTAMP 80
384 enum option_flag1_values {
385 TDS_BYTE_ORDER_X86 = 0,
386 TDS_CHARSET_ASCII = 0,
388 TDS_FLOAT_IEEE_754 = 0,
389 TDS_INIT_DB_WARN = 0,
390 TDS_SET_LANG_OFF = 0,
391 TDS_USE_DB_SILENT = 0,
392 TDS_BYTE_ORDER_68000 = 0x01,
393 TDS_CHARSET_EBDDIC = 0x02,
394 TDS_FLOAT_VAX = 0x04,
395 TDS_FLOAT_ND5000 = 0x08,
396 TDS_DUMPLOAD_OFF = 0x10,
397 TDS_USE_DB_NOTIFY = 0x20,
398 TDS_INIT_DB_FATAL = 0x40,
399 TDS_SET_LANG_ON = 0x80
402 enum option_flag2_values {
403 TDS_INIT_LANG_WARN = 0,
404 TDS_INTEGRATED_SECURTY_OFF = 0,
407 TDS_INIT_LANG_REQUIRED = 0x01,
409 TDS_TRANSACTION_BOUNDARY71 = 0x04,
410 TDS_CACHE_CONNECT71 = 0x08,
411 TDS_USER_SERVER = 0x10,
412 TDS_USER_REMUSER = 0x20,
413 TDS_USER_SQLREPL = 0x40,
414 TDS_INTEGRATED_SECURITY_ON = 0x80
417 enum option_flag3_values {
418 TDS_RESTRICTED_COLLATION = 0,
419 TDS_CHANGE_PASSWORD = 0x01,
420 TDS_SEND_YUKON_BINARY_XML = 0x02,
421 TDS_REQUEST_USER_INSTANCE = 0x04,
422 TDS_UNKNOWN_COLLATION_HANDLING = 0x08,
423 TDS_EXTENSION = 0x10,
428 TDS_DYN_PREPARE = 0x01,
430 TDS_DYN_DEALLOC = 0x04,
431 TDS_DYN_EXEC_IMMED = 0x08,
432 TDS_DYN_PROCNAME = 0x10,
434 TDS_DYN_DESCIN = 0x40,
435 TDS_DYN_DESCOUT = 0x80,
441 TDS_CUR_TYPE_KEYSET = 0x0001,
442 TDS_CUR_TYPE_DYNAMIC = 0x0002,
443 TDS_CUR_TYPE_FORWARD = 0x0004,
444 TDS_CUR_TYPE_STATIC = 0x0008,
445 TDS_CUR_TYPE_FASTFORWARDONLY = 0x0010,
446 TDS_CUR_TYPE_PARAMETERIZED = 0x1000,
447 TDS_CUR_TYPE_AUTO_FETCH = 0x2000
451 TDS_CUR_CONCUR_READ_ONLY = 1,
452 TDS_CUR_CONCUR_SCROLL_LOCKS = 2,
453 TDS_CUR_CONCUR_OPTIMISTIC = 4,
454 TDS_CUR_CONCUR_OPTIMISTIC_VALUES = 8
458 #define TDS_MAXNAME 30
459 #define TDS_PROGNLEN 10
464 TDS5_SEC_LOG_ENCRYPT = 1,
465 TDS5_SEC_LOG_CHALLENGE = 2,
466 TDS5_SEC_LOG_LABELS = 4,
467 TDS5_SEC_LOG_APPDEFINED = 8,
468 TDS5_SEC_LOG_SECSESS = 16,
469 TDS5_SEC_LOG_ENCRYPT2 = 32,
470 TDS5_SEC_LOG_NONCE = 128
TDS 7.2 SMP packet header.
Definition: proto.h:355
TDS 7.1 collation informations.
Definition: proto.h:345