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_MSG_TOKEN 101
80 #define TDS_LOGOUT_TOKEN 113
81 #define TDS_RETURNSTATUS_TOKEN 121
82 #define TDS_PROCID_TOKEN 124
83 #define TDS7_RESULT_TOKEN 129
84 #define TDS7_COMPUTE_RESULT_TOKEN 136
85 #define TDS_COLNAME_TOKEN 160
86 #define TDS_COLFMT_TOKEN 161
87 #define TDS_DYNAMIC2_TOKEN 163
88 #define TDS_TABNAME_TOKEN 164
89 #define TDS_COLINFO_TOKEN 165
90 #define TDS_OPTIONCMD_TOKEN 166
91 #define TDS_COMPUTE_NAMES_TOKEN 167
92 #define TDS_COMPUTE_RESULT_TOKEN 168
93 #define TDS_ORDERBY_TOKEN 169
94 #define TDS_ERROR_TOKEN 170
95 #define TDS_INFO_TOKEN 171
96 #define TDS_PARAM_TOKEN 172
97 #define TDS_LOGINACK_TOKEN 173
98 #define TDS_CONTROL_FEATUREEXTACK_TOKEN \
100 #define TDS_ROW_TOKEN 209
101 #define TDS_NBC_ROW_TOKEN 210
102 #define TDS_CMP_ROW_TOKEN 211
103 #define TDS5_PARAMS_TOKEN 215
104 #define TDS_CAPABILITY_TOKEN 226
105 #define TDS_ENVCHANGE_TOKEN 227
106 #define TDS_SESSIONSTATE_TOKEN 228
107 #define TDS_EED_TOKEN 229
108 #define TDS_DBRPC_TOKEN 230
109 #define TDS5_DYNAMIC_TOKEN 231
110 #define TDS5_PARAMFMT_TOKEN 236
111 #define TDS_AUTH_TOKEN 237
112 #define TDS_RESULT_TOKEN 238
113 #define TDS_DONE_TOKEN 253
114 #define TDS_DONEPROC_TOKEN 254
115 #define TDS_DONEINPROC_TOKEN 255
118 #define TDS_CURCLOSE_TOKEN 128
119 #define TDS_CURDELETE_TOKEN 129
120 #define TDS_CURFETCH_TOKEN 130
121 #define TDS_CURINFO_TOKEN 131
122 #define TDS_CUROPEN_TOKEN 132
123 #define TDS_CURDECLARE_TOKEN 134
127 #define TDS_ENV_DATABASE 1
128 #define TDS_ENV_LANG 2
129 #define TDS_ENV_CHARSET 3
130 #define TDS_ENV_PACKSIZE 4
131 #define TDS_ENV_LCID 5
132 #define TDS_ENV_SQLCOLLATION 7
133 #define TDS_ENV_BEGINTRANS 8
134 #define TDS_ENV_COMMITTRANS 9
135 #define TDS_ENV_ROLLBACKTRANS 10
136 #define TDS_ENV_ROUTING 20
139 #define TDS_SP_CURSOR 1
140 #define TDS_SP_CURSOROPEN 2
141 #define TDS_SP_CURSORPREPARE 3
142 #define TDS_SP_CURSOREXECUTE 4
143 #define TDS_SP_CURSORPREPEXEC 5
144 #define TDS_SP_CURSORUNPREPARE 6
145 #define TDS_SP_CURSORFETCH 7
146 #define TDS_SP_CURSOROPTION 8
147 #define TDS_SP_CURSORCLOSE 9
148 #define TDS_SP_EXECUTESQL 10
149 #define TDS_SP_PREPARE 11
150 #define TDS_SP_EXECUTE 12
151 #define TDS_SP_PREPEXEC 13
152 #define TDS_SP_PREPEXECRPC 14
153 #define TDS_SP_UNPREPARE 15
206 SYBMSDATETIMEOFFSET = 43,
224 SYBSENSITIVITY = 103,
231 SYB5BIGDATETIME = 187,
239 USER_VARCHAR_TYPE = 2,
240 USER_SYSNAME_TYPE = 18,
241 USER_NCHAR_TYPE = 24,
242 USER_NVARCHAR_TYPE = 25,
243 USER_UNICHAR_TYPE = 34,
244 USER_UNIVARCHAR_TYPE = 35,
245 USER_UNITEXT_TYPE = 36,
250 #define SYBAOPCNTU 76
252 #define SYBAOPSUMU 78
254 #define SYBAOPAVGU 80
259 #define SYBAOPCNT_BIG 9
260 #define SYBAOPSTDEV 48
261 #define SYBAOPSTDEVP 49
263 #define SYBAOPVARP 51
264 #define SYBAOPCHECKSUM_AGG 114
272 , TDS_OPT_DEFAULT = 2
279 TDS_OPT_DATEFIRST = 1
280 , TDS_OPT_TEXTSIZE = 2
281 , TDS_OPT_STAT_TIME = 3
282 , TDS_OPT_STAT_IO = 4
283 , TDS_OPT_ROWCOUNT = 5
284 , TDS_OPT_NATLANG = 6
285 , TDS_OPT_DATEFORMAT = 7
286 , TDS_OPT_ISOLATION = 8
288 , TDS_OPT_CHARSET = 10
289 , TDS_OPT_SHOWPLAN = 13
290 , TDS_OPT_NOEXEC = 14
291 , TDS_OPT_ARITHIGNOREON = 15
292 , TDS_OPT_ARITHABORTON = 17
293 , TDS_OPT_PARSEONLY = 18
294 , TDS_OPT_GETDATA = 20
295 , TDS_OPT_NOCOUNT = 21
296 , TDS_OPT_FORCEPLAN = 23
297 , TDS_OPT_FORMATONLY = 24
298 , TDS_OPT_CHAINXACTS = 25
299 , TDS_OPT_CURCLOSEONXACT = 26
300 , TDS_OPT_FIPSFLAG = 27
301 , TDS_OPT_RESTREES = 28
302 , TDS_OPT_IDENTITYON = 29
303 , TDS_OPT_CURREAD = 30
304 , TDS_OPT_CURWRITE = 31
305 , TDS_OPT_IDENTITYOFF = 32
306 , TDS_OPT_AUTHOFF = 33
307 , TDS_OPT_ANSINULL = 34
308 , TDS_OPT_QUOTED_IDENT = 35
309 , TDS_OPT_ARITHIGNOREOFF = 36
310 , TDS_OPT_ARITHABORTOFF = 37
311 , TDS_OPT_TRUNCABORT = 38
315 TDS_OPT_ARITHOVERFLOW = 0x01,
316 TDS_OPT_NUMERICTRUNC = 0x02
319 enum TDS_OPT_DATEFIRST_CHOICE
321 TDS_OPT_MONDAY = 1, TDS_OPT_TUESDAY = 2, TDS_OPT_WEDNESDAY = 3, TDS_OPT_THURSDAY = 4, TDS_OPT_FRIDAY = 5, TDS_OPT_SATURDAY =
322 6, TDS_OPT_SUNDAY = 7
325 enum TDS_OPT_DATEFORMAT_CHOICE
327 TDS_OPT_FMTMDY = 1, TDS_OPT_FMTDMY = 2, TDS_OPT_FMTYMD = 3, TDS_OPT_FMTYDM = 4, TDS_OPT_FMTMYD = 5, TDS_OPT_FMTDYM = 6
329 enum TDS_OPT_ISOLATION_CHOICE
338 typedef enum tds_packet_type
359 TDS_USMALLINT locale_id;
361 TDS_UCHAR charset_id;
385 #define TDS_SF_BIN (TDS_USMALLINT) 0x100
386 #define TDS_SF_WIDTH_INSENSITIVE (TDS_USMALLINT) 0x080
387 #define TDS_SF_KATATYPE_INSENSITIVE (TDS_USMALLINT) 0x040
388 #define TDS_SF_ACCENT_SENSITIVE (TDS_USMALLINT) 0x020
389 #define TDS_SF_CASE_INSENSITIVE (TDS_USMALLINT) 0x010
392 #define TDS_UT_TIMESTAMP 80
396 enum option_flag1_values {
397 TDS_BYTE_ORDER_X86 = 0,
398 TDS_CHARSET_ASCII = 0,
400 TDS_FLOAT_IEEE_754 = 0,
401 TDS_INIT_DB_WARN = 0,
402 TDS_SET_LANG_OFF = 0,
403 TDS_USE_DB_SILENT = 0,
404 TDS_BYTE_ORDER_68000 = 0x01,
405 TDS_CHARSET_EBDDIC = 0x02,
406 TDS_FLOAT_VAX = 0x04,
407 TDS_FLOAT_ND5000 = 0x08,
408 TDS_DUMPLOAD_OFF = 0x10,
409 TDS_USE_DB_NOTIFY = 0x20,
410 TDS_INIT_DB_FATAL = 0x40,
411 TDS_SET_LANG_ON = 0x80
414 enum option_flag2_values {
415 TDS_INIT_LANG_WARN = 0,
416 TDS_INTEGRATED_SECURTY_OFF = 0,
419 TDS_INIT_LANG_REQUIRED = 0x01,
421 TDS_TRANSACTION_BOUNDARY71 = 0x04,
422 TDS_CACHE_CONNECT71 = 0x08,
423 TDS_USER_SERVER = 0x10,
424 TDS_USER_REMUSER = 0x20,
425 TDS_USER_SQLREPL = 0x40,
426 TDS_INTEGRATED_SECURITY_ON = 0x80
429 enum option_flag3_values {
430 TDS_RESTRICTED_COLLATION = 0,
431 TDS_CHANGE_PASSWORD = 0x01,
432 TDS_SEND_YUKON_BINARY_XML = 0x02,
433 TDS_REQUEST_USER_INSTANCE = 0x04,
434 TDS_UNKNOWN_COLLATION_HANDLING = 0x08,
435 TDS_EXTENSION = 0x10,
440 TDS_READONLY_INTENT = 0x20,
445 TDS_DYN_PREPARE = 0x01,
447 TDS_DYN_DEALLOC = 0x04,
448 TDS_DYN_EXEC_IMMED = 0x08,
449 TDS_DYN_PROCNAME = 0x10,
451 TDS_DYN_DESCIN = 0x40,
452 TDS_DYN_DESCOUT = 0x80,
458 TDS_CUR_TYPE_KEYSET = 0x0001,
459 TDS_CUR_TYPE_DYNAMIC = 0x0002,
460 TDS_CUR_TYPE_FORWARD = 0x0004,
461 TDS_CUR_TYPE_STATIC = 0x0008,
462 TDS_CUR_TYPE_FASTFORWARDONLY = 0x0010,
463 TDS_CUR_TYPE_PARAMETERIZED = 0x1000,
464 TDS_CUR_TYPE_AUTO_FETCH = 0x2000
468 TDS_CUR_CONCUR_READ_ONLY = 1,
469 TDS_CUR_CONCUR_SCROLL_LOCKS = 2,
470 TDS_CUR_CONCUR_OPTIMISTIC = 4,
471 TDS_CUR_CONCUR_OPTIMISTIC_VALUES = 8
475 #define TDS_MAXNAME 30
476 #define TDS_PROGNLEN 10
481 TDS5_SEC_LOG_ENCRYPT = 1,
482 TDS5_SEC_LOG_CHALLENGE = 2,
483 TDS5_SEC_LOG_LABELS = 4,
484 TDS5_SEC_LOG_APPDEFINED = 8,
485 TDS5_SEC_LOG_SECSESS = 16,
486 TDS5_SEC_LOG_ENCRYPT2 = 32,
487 TDS5_SEC_LOG_ENCRYPT3 = 128,
492 TDS5_MSG_SEC_ENCRYPT = 1,
493 TDS5_MSG_SEC_LOGPWD = 2,
494 TDS5_MSG_SEC_REMPWD = 3,
495 TDS5_MSG_SEC_CHALLENGE = 4,
496 TDS5_MSG_SEC_RESPONSE = 5,
497 TDS5_MSG_SEC_GETLABEL = 6,
498 TDS5_MSG_SEC_LABEL = 7,
499 TDS5_MSG_SQL_TBLNAME = 8,
500 TDS5_MSG_GW_RESERVED = 9,
501 TDS5_MSG_OMNI_CAPABILITIES = 10,
502 TDS5_MSG_SEC_OPAQUE = 11,
503 TDS5_MSG_HAFAILOVER = 12,
507 TDS5_MSG_SEC_ENCRYPT2 = 14,
508 TDS5_MSG_SEC_LOGPWD2 = 15,
509 TDS5_MSG_SEC_SUP_CIPHER = 16,
510 TDS5_MSG_MIG_REQ = 17,
512 TDS5_MSG_MIG_SYNC = 18,
513 TDS5_MSG_MIG_CONT = 19,
514 TDS5_MSG_MIG_IGN = 20,
515 TDS5_MSG_MIG_FAIL = 21,
517 TDS5_MSG_SEC_REMPWD2 = 22,
518 TDS5_MSG_MIG_RESUME = 23,
519 TDS5_MSG_SEC_ENCRYPT3 = 30,
520 TDS5_MSG_SEC_LOGPWD3 = 31,
521 TDS5_MSG_SEC_REMPWD3 = 32,
522 TDS5_MSG_DR_MAP = 33,
536 TDS5_SEC_SECSESS = 1,
537 TDS5_SEC_FORWARD = 2,
546 TDS5_SEC_NETWORK_AUTHENTICATION = 0x1,
547 TDS5_SEC_MUTUAL_AUTHENTICATION = 0x2,
548 TDS5_SEC_DELEGATION = 0x4,
549 TDS5_SEC_INTEGRITY = 0x8,
550 TDS5_SEC_CONFIDENTIALITY = 0x10,
551 TDS5_SEC_DETECT_REPLAY = 0x20,
552 TDS5_SEC_DETECT_SEQUENCE = 0x40,
553 TDS5_SEC_DATA_ORIGIN = 0x80,
554 TDS5_SEC_CHANNEL_BINDING = 0x100,
558 TDS5_SEC_VERSION = 50,
565 TDS7_ENCRYPT_NOT_SUP,
TDS 7.2 SMP packet header.
Definition: proto.h:367
TDS 7.1 collation informations.
Definition: proto.h:357