FreeTDS API: src/tds/tds_types.h Source File

FreeTDS API

- Main Page
- Related Pages
- Modules
- Classes
- Files

- File List
- File Members

All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
tds_types.h
1 /*
2 * This file produced from ./types.pl
3 */
4
8 int
9 tds_get_size_by_type(int servertype)
10 {
11 switch (servertype) {
12 case SYBVOID:
13 return 0;
14 case SYBBIT:
15 case SYBBITN:
16 case SYBINT1:
17 case SYBSINT1:
18 case SYBUINT1:
19 return 1;
20 case SYBINT2:
21 case SYBUINT2:
22 return 2;
23 case SYBMSDATE:
24 return 3;
25 case SYBDATE:
26 case SYBDATEN:
27 case SYBDATETIME4:
28 case SYBINT4:
29 case SYBMONEY4:
30 case SYBREAL:
31 case SYBTIME:
32 case SYBTIMEN:
33 case SYBUINT4:
34 return 4;
35 case SYB5INT8:
36 case SYBDATETIME:
37 case SYBFLT8:
38 case SYBINT8:
39 case SYBINTERVAL:
40 case SYBMONEY:
41 case SYBUINT8:
42 return 8;
43 case SYBUNIQUE:
44 return 16;
45 default:
46 return -1;
47 }
48 }
49
54 int
55 tds_get_varint_size(TDSCONNECTION * conn, int datatype)
56 {
57 switch (datatype) {
58 case SYBBIT:
59 case SYBDATETIME:
60 case SYBDATETIME4:
61 case SYBFLT8:
62 case SYBINT1:
63 case SYBINT2:
64 case SYBINT4:
65 case SYBMONEY:
66 case SYBMONEY4:
67 case SYBREAL:
68 case SYBVOID:
69 return 0;
70 case SYBIMAGE:
71 case SYBTEXT:
72 return 4;
73 }
74
75 if (IS_TDS7_PLUS(conn)) {
76 switch (datatype) {
77 case SYBINT8:
78 return 0;
79 case XSYBBINARY:
80 case XSYBCHAR:
81 case XSYBNCHAR:
82 case XSYBNVARCHAR:
83 case XSYBVARBINARY:
84 case XSYBVARCHAR:
85 return 2;
86 case SYBNTEXT:
87 case SYBVARIANT:
88 return 4;
89 case SYBMSUDT:
90 case SYBMSXML:
91 return 8;
92 }
93 } else if (IS_TDS50(conn)) {
94 switch (datatype) {
95 case SYB5INT8:
96 case SYBDATE:
97 case SYBINTERVAL:
98 case SYBSINT1:
99 case SYBTIME:
100 case SYBUINT1:
101 case SYBUINT2:
102 case SYBUINT4:
103 case SYBUINT8:
104 return 0;
105 case SYBUNITEXT:
106 case SYBXML:
107 return 4;
108 case SYBLONGBINARY:
109 case SYBLONGCHAR:
110 return 5;
111 }
112 }
113 return 1;
114 }
115
122 int
123 tds_get_conversion_type(int srctype, int colsize)
124 {
125 switch (srctype) {
126 case SYBBITN:
127 return SYBBIT;
128 case SYBDATEN:
129 return SYBDATE;
130 case SYBDATETIMN:
131 switch (colsize) {
132 case 8:
133 return SYBDATETIME;
134 case 4:
135 return SYBDATETIME4;
136 }
137 break;
138 case SYBFLTN:
139 switch (colsize) {
140 case 8:
141 return SYBFLT8;
142 case 4:
143 return SYBREAL;
144 }
145 break;
146 case SYBINTN:
147 switch (colsize) {
148 case 8:
149 return SYBINT8;
150 case 4:
151 return SYBINT4;
152 case 2:
153 return SYBINT2;
154 case 1:
155 return SYBINT1;
156 }
157 break;
158 case SYBMONEYN:
159 switch (colsize) {
160 case 8:
161 return SYBMONEY;
162 case 4:
163 return SYBMONEY4;
164 }
165 break;
166 case SYBTIMEN:
167 return SYBTIME;
168 case SYBUINTN:
169 switch (colsize) {
170 case 8:
171 return SYBUINT8;
172 case 4:
173 return SYBUINT4;
174 case 2:
175 return SYBUINT2;
176 case 1:
177 return SYBUINT1;
178 }
179 break;
180 case SYB5INT8:
181 return SYBINT8;
182 }
183 return srctype;
184 }
185
186 const unsigned char tds_type_flags_ms[256] = {
187 /* 0 empty */ TDS_TYPEFLAG_INVALID,
188 /* 1 empty */ TDS_TYPEFLAG_INVALID,
189 /* 2 empty */ TDS_TYPEFLAG_INVALID,
190 /* 3 empty */ TDS_TYPEFLAG_INVALID,
191 /* 4 empty */ TDS_TYPEFLAG_INVALID,
192 /* 5 empty */ TDS_TYPEFLAG_INVALID,
193 /* 6 empty */ TDS_TYPEFLAG_INVALID,
194 /* 7 empty */ TDS_TYPEFLAG_INVALID,
195 /* 8 empty */ TDS_TYPEFLAG_INVALID,
196 /* 9 empty */ TDS_TYPEFLAG_INVALID,
197 /* 10 empty */ TDS_TYPEFLAG_INVALID,
198 /* 11 empty */ TDS_TYPEFLAG_INVALID,
199 /* 12 empty */ TDS_TYPEFLAG_INVALID,
200 /* 13 empty */ TDS_TYPEFLAG_INVALID,
201 /* 14 empty */ TDS_TYPEFLAG_INVALID,
202 /* 15 empty */ TDS_TYPEFLAG_INVALID,
203 /* 16 empty */ TDS_TYPEFLAG_INVALID,
204 /* 17 empty */ TDS_TYPEFLAG_INVALID,
205 /* 18 empty */ TDS_TYPEFLAG_INVALID,
206 /* 19 empty */ TDS_TYPEFLAG_INVALID,
207 /* 20 empty */ TDS_TYPEFLAG_INVALID,
208 /* 21 empty */ TDS_TYPEFLAG_INVALID,
209 /* 22 empty */ TDS_TYPEFLAG_INVALID,
210 /* 23 empty */ TDS_TYPEFLAG_INVALID,
211 /* 24 empty */ TDS_TYPEFLAG_INVALID,
212 /* 25 empty */ TDS_TYPEFLAG_INVALID,
213 /* 26 empty */ TDS_TYPEFLAG_INVALID,
214 /* 27 empty */ TDS_TYPEFLAG_INVALID,
215 /* 28 empty */ TDS_TYPEFLAG_INVALID,
216 /* 29 empty */ TDS_TYPEFLAG_INVALID,
217 /* 30 empty */ TDS_TYPEFLAG_INVALID,
218 /* 31 SYBVOID */ TDS_TYPEFLAG_FIXED,
219 /* 32 empty */ TDS_TYPEFLAG_INVALID,
220 /* 33 empty */ TDS_TYPEFLAG_INVALID,
221 /* 34 SYBIMAGE */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
222 /* 35 SYBTEXT */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_COLLATE|TDS_TYPEFLAG_ASCII,
223 /* 36 SYBUNIQUE */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_FIXED,
224 /* 37 SYBVARBINARY */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
225 /* 38 SYBINTN */ TDS_TYPEFLAG_NULLABLE,
226 /* 39 SYBVARCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
227 /* 40 SYBMSDATE */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_FIXED,
228 /* 41 SYBMSTIME */ TDS_TYPEFLAG_NULLABLE,
229 /* 42 SYBMSDATETIME2 */ TDS_TYPEFLAG_NULLABLE,
230 /* 43 SYBMSDATETIMEOFFSET */ TDS_TYPEFLAG_NULLABLE,
231 /* 44 empty */ TDS_TYPEFLAG_INVALID,
232 /* 45 SYBBINARY */ TDS_TYPEFLAG_VARIABLE,
233 /* 46 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
234 /* 47 SYBCHAR */ TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
235 /* 48 SYBINT1 */ TDS_TYPEFLAG_FIXED,
236 /* 49 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
237 /* 50 SYBBIT */ TDS_TYPEFLAG_FIXED,
238 /* 51 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
239 /* 52 SYBINT2 */ TDS_TYPEFLAG_FIXED,
240 /* 53 empty */ TDS_TYPEFLAG_INVALID,
241 /* 54 empty */ TDS_TYPEFLAG_INVALID,
242 /* 55 empty */ TDS_TYPEFLAG_INVALID,
243 /* 56 SYBINT4 */ TDS_TYPEFLAG_FIXED,
244 /* 57 empty */ TDS_TYPEFLAG_INVALID,
245 /* 58 SYBDATETIME4 */ TDS_TYPEFLAG_FIXED,
246 /* 59 SYBREAL */ TDS_TYPEFLAG_FIXED,
247 /* 60 SYBMONEY */ TDS_TYPEFLAG_FIXED,
248 /* 61 SYBDATETIME */ TDS_TYPEFLAG_FIXED,
249 /* 62 SYBFLT8 */ TDS_TYPEFLAG_FIXED,
250 /* 63 empty */ TDS_TYPEFLAG_INVALID,
251 /* 64 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
252 /* 65 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
253 /* 66 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
254 /* 67 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
255 /* 68 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE,
256 /* 69 empty */ TDS_TYPEFLAG_INVALID,
257 /* 70 empty */ TDS_TYPEFLAG_INVALID,
258 /* 71 empty */ TDS_TYPEFLAG_INVALID,
259 /* 72 empty */ TDS_TYPEFLAG_INVALID,
260 /* 73 empty */ TDS_TYPEFLAG_INVALID,
261 /* 74 empty */ TDS_TYPEFLAG_INVALID,
262 /* 75 empty */ TDS_TYPEFLAG_INVALID,
263 /* 76 empty */ TDS_TYPEFLAG_INVALID,
264 /* 77 empty */ TDS_TYPEFLAG_INVALID,
265 /* 78 empty */ TDS_TYPEFLAG_INVALID,
266 /* 79 empty */ TDS_TYPEFLAG_INVALID,
267 /* 80 empty */ TDS_TYPEFLAG_INVALID,
268 /* 81 empty */ TDS_TYPEFLAG_INVALID,
269 /* 82 empty */ TDS_TYPEFLAG_INVALID,
270 /* 83 empty */ TDS_TYPEFLAG_INVALID,
271 /* 84 empty */ TDS_TYPEFLAG_INVALID,
272 /* 85 empty */ TDS_TYPEFLAG_INVALID,
273 /* 86 empty */ TDS_TYPEFLAG_INVALID,
274 /* 87 empty */ TDS_TYPEFLAG_INVALID,
275 /* 88 empty */ TDS_TYPEFLAG_INVALID,
276 /* 89 empty */ TDS_TYPEFLAG_INVALID,
277 /* 90 empty */ TDS_TYPEFLAG_INVALID,
278 /* 91 empty */ TDS_TYPEFLAG_INVALID,
279 /* 92 empty */ TDS_TYPEFLAG_INVALID,
280 /* 93 empty */ TDS_TYPEFLAG_INVALID,
281 /* 94 empty */ TDS_TYPEFLAG_INVALID,
282 /* 95 empty */ TDS_TYPEFLAG_INVALID,
283 /* 96 empty */ TDS_TYPEFLAG_INVALID,
284 /* 97 empty */ TDS_TYPEFLAG_INVALID,
285 /* 98 SYBVARIANT */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
286 /* 99 SYBNTEXT */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_COLLATE|TDS_TYPEFLAG_UNICODE,
287 /* 100 empty */ TDS_TYPEFLAG_INVALID,
288 /* 101 empty */ TDS_TYPEFLAG_INVALID,
289 /* 102 empty */ TDS_TYPEFLAG_INVALID,
290 /* 103 SYBNVARCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
291 /* 104 SYBBITN */ TDS_TYPEFLAG_NULLABLE,
292 /* 105 empty */ TDS_TYPEFLAG_INVALID,
293 /* 106 SYBDECIMAL */ TDS_TYPEFLAG_NUMERIC,
294 /* 107 empty */ TDS_TYPEFLAG_INVALID,
295 /* 108 SYBNUMERIC */ TDS_TYPEFLAG_NUMERIC,
296 /* 109 SYBFLTN */ TDS_TYPEFLAG_NULLABLE,
297 /* 110 SYBMONEYN */ TDS_TYPEFLAG_NULLABLE,
298 /* 111 SYBDATETIMN */ TDS_TYPEFLAG_NULLABLE,
299 /* 112 empty */ TDS_TYPEFLAG_INVALID,
300 /* 113 empty */ TDS_TYPEFLAG_INVALID,
301 /* 114 empty */ TDS_TYPEFLAG_INVALID,
302 /* 115 empty */ TDS_TYPEFLAG_INVALID,
303 /* 116 empty */ TDS_TYPEFLAG_INVALID,
304 /* 117 empty */ TDS_TYPEFLAG_INVALID,
305 /* 118 empty */ TDS_TYPEFLAG_INVALID,
306 /* 119 empty */ TDS_TYPEFLAG_INVALID,
307 /* 120 empty */ TDS_TYPEFLAG_INVALID,
308 /* 121 empty */ TDS_TYPEFLAG_INVALID,
309 /* 122 SYBMONEY4 */ TDS_TYPEFLAG_FIXED,
310 /* 123 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE,
311 /* 124 empty */ TDS_TYPEFLAG_INVALID,
312 /* 125 empty */ TDS_TYPEFLAG_INVALID,
313 /* 126 empty */ TDS_TYPEFLAG_INVALID,
314 /* 127 SYBINT8 */ TDS_TYPEFLAG_FIXED,
315 /* 128 empty */ TDS_TYPEFLAG_INVALID,
316 /* 129 empty */ TDS_TYPEFLAG_INVALID,
317 /* 130 empty */ TDS_TYPEFLAG_INVALID,
318 /* 131 empty */ TDS_TYPEFLAG_INVALID,
319 /* 132 empty */ TDS_TYPEFLAG_INVALID,
320 /* 133 empty */ TDS_TYPEFLAG_INVALID,
321 /* 134 empty */ TDS_TYPEFLAG_INVALID,
322 /* 135 empty */ TDS_TYPEFLAG_INVALID,
323 /* 136 empty */ TDS_TYPEFLAG_INVALID,
324 /* 137 empty */ TDS_TYPEFLAG_INVALID,
325 /* 138 empty */ TDS_TYPEFLAG_INVALID,
326 /* 139 empty */ TDS_TYPEFLAG_INVALID,
327 /* 140 empty */ TDS_TYPEFLAG_INVALID,
328 /* 141 empty */ TDS_TYPEFLAG_INVALID,
329 /* 142 empty */ TDS_TYPEFLAG_INVALID,
330 /* 143 empty */ TDS_TYPEFLAG_INVALID,
331 /* 144 empty */ TDS_TYPEFLAG_INVALID,
332 /* 145 empty */ TDS_TYPEFLAG_INVALID,
333 /* 146 empty */ TDS_TYPEFLAG_INVALID,
334 /* 147 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE,
335 /* 148 empty */ TDS_TYPEFLAG_INVALID,
336 /* 149 empty */ TDS_TYPEFLAG_INVALID,
337 /* 150 empty */ TDS_TYPEFLAG_INVALID,
338 /* 151 empty */ TDS_TYPEFLAG_INVALID,
339 /* 152 empty */ TDS_TYPEFLAG_INVALID,
340 /* 153 empty */ TDS_TYPEFLAG_INVALID,
341 /* 154 empty */ TDS_TYPEFLAG_INVALID,
342 /* 155 empty */ TDS_TYPEFLAG_INVALID,
343 /* 156 empty */ TDS_TYPEFLAG_INVALID,
344 /* 157 empty */ TDS_TYPEFLAG_INVALID,
345 /* 158 empty */ TDS_TYPEFLAG_INVALID,
346 /* 159 empty */ TDS_TYPEFLAG_INVALID,
347 /* 160 empty */ TDS_TYPEFLAG_INVALID,
348 /* 161 empty */ TDS_TYPEFLAG_INVALID,
349 /* 162 empty */ TDS_TYPEFLAG_INVALID,
350 /* 163 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
351 /* 164 empty */ TDS_TYPEFLAG_INVALID,
352 /* 165 XSYBVARBINARY */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
353 /* 166 empty */ TDS_TYPEFLAG_INVALID,
354 /* 167 XSYBVARCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_COLLATE|TDS_TYPEFLAG_ASCII,
355 /* 168 empty */ TDS_TYPEFLAG_INVALID,
356 /* 169 empty */ TDS_TYPEFLAG_INVALID,
357 /* 170 empty */ TDS_TYPEFLAG_INVALID,
358 /* 171 empty */ TDS_TYPEFLAG_INVALID,
359 /* 172 empty */ TDS_TYPEFLAG_INVALID,
360 /* 173 XSYBBINARY */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
361 /* 174 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
362 /* 175 XSYBCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_COLLATE|TDS_TYPEFLAG_ASCII,
363 /* 176 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
364 /* 177 empty */ TDS_TYPEFLAG_INVALID,
365 /* 178 empty */ TDS_TYPEFLAG_INVALID,
366 /* 179 empty */ TDS_TYPEFLAG_INVALID,
367 /* 180 empty */ TDS_TYPEFLAG_INVALID,
368 /* 181 empty */ TDS_TYPEFLAG_INVALID,
369 /* 182 empty */ TDS_TYPEFLAG_INVALID,
370 /* 183 empty */ TDS_TYPEFLAG_INVALID,
371 /* 184 empty */ TDS_TYPEFLAG_INVALID,
372 /* 185 empty */ TDS_TYPEFLAG_INVALID,
373 /* 186 empty */ TDS_TYPEFLAG_INVALID,
374 /* 187 empty */ TDS_TYPEFLAG_INVALID,
375 /* 188 empty */ TDS_TYPEFLAG_INVALID,
376 /* 189 empty */ TDS_TYPEFLAG_INVALID,
377 /* 190 empty */ TDS_TYPEFLAG_INVALID,
378 /* 191 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
379 /* 192 empty */ TDS_TYPEFLAG_INVALID,
380 /* 193 empty */ TDS_TYPEFLAG_INVALID,
381 /* 194 empty */ TDS_TYPEFLAG_INVALID,
382 /* 195 empty */ TDS_TYPEFLAG_INVALID,
383 /* 196 empty */ TDS_TYPEFLAG_INVALID,
384 /* 197 empty */ TDS_TYPEFLAG_INVALID,
385 /* 198 empty */ TDS_TYPEFLAG_INVALID,
386 /* 199 empty */ TDS_TYPEFLAG_INVALID,
387 /* 200 empty */ TDS_TYPEFLAG_INVALID,
388 /* 201 empty */ TDS_TYPEFLAG_INVALID,
389 /* 202 empty */ TDS_TYPEFLAG_INVALID,
390 /* 203 empty */ TDS_TYPEFLAG_INVALID,
391 /* 204 empty */ TDS_TYPEFLAG_INVALID,
392 /* 205 empty */ TDS_TYPEFLAG_INVALID,
393 /* 206 empty */ TDS_TYPEFLAG_INVALID,
394 /* 207 empty */ TDS_TYPEFLAG_INVALID,
395 /* 208 empty */ TDS_TYPEFLAG_INVALID,
396 /* 209 empty */ TDS_TYPEFLAG_INVALID,
397 /* 210 empty */ TDS_TYPEFLAG_INVALID,
398 /* 211 empty */ TDS_TYPEFLAG_INVALID,
399 /* 212 empty */ TDS_TYPEFLAG_INVALID,
400 /* 213 empty */ TDS_TYPEFLAG_INVALID,
401 /* 214 empty */ TDS_TYPEFLAG_INVALID,
402 /* 215 empty */ TDS_TYPEFLAG_INVALID,
403 /* 216 empty */ TDS_TYPEFLAG_INVALID,
404 /* 217 empty */ TDS_TYPEFLAG_INVALID,
405 /* 218 empty */ TDS_TYPEFLAG_INVALID,
406 /* 219 empty */ TDS_TYPEFLAG_INVALID,
407 /* 220 empty */ TDS_TYPEFLAG_INVALID,
408 /* 221 empty */ TDS_TYPEFLAG_INVALID,
409 /* 222 empty */ TDS_TYPEFLAG_INVALID,
410 /* 223 empty */ TDS_TYPEFLAG_INVALID,
411 /* 224 empty */ TDS_TYPEFLAG_INVALID,
412 /* 225 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
413 /* 226 empty */ TDS_TYPEFLAG_INVALID,
414 /* 227 empty */ TDS_TYPEFLAG_INVALID,
415 /* 228 empty */ TDS_TYPEFLAG_INVALID,
416 /* 229 empty */ TDS_TYPEFLAG_INVALID,
417 /* 230 empty */ TDS_TYPEFLAG_INVALID,
418 /* 231 XSYBNVARCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_COLLATE|TDS_TYPEFLAG_UNICODE,
419 /* 232 empty */ TDS_TYPEFLAG_INVALID,
420 /* 233 empty */ TDS_TYPEFLAG_INVALID,
421 /* 234 empty */ TDS_TYPEFLAG_INVALID,
422 /* 235 empty */ TDS_TYPEFLAG_INVALID,
423 /* 236 empty */ TDS_TYPEFLAG_INVALID,
424 /* 237 empty */ TDS_TYPEFLAG_INVALID,
425 /* 238 empty */ TDS_TYPEFLAG_INVALID,
426 /* 239 XSYBNCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_COLLATE|TDS_TYPEFLAG_UNICODE,
427 /* 240 SYBMSUDT */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
428 /* 241 SYBMSXML */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
429 /* 242 empty */ TDS_TYPEFLAG_INVALID,
430 /* 243 empty */ TDS_TYPEFLAG_INVALID,
431 /* 244 empty */ TDS_TYPEFLAG_INVALID,
432 /* 245 empty */ TDS_TYPEFLAG_INVALID,
433 /* 246 empty */ TDS_TYPEFLAG_INVALID,
434 /* 247 empty */ TDS_TYPEFLAG_INVALID,
435 /* 248 empty */ TDS_TYPEFLAG_INVALID,
436 /* 249 empty */ TDS_TYPEFLAG_INVALID,
437 /* 250 empty */ TDS_TYPEFLAG_INVALID,
438 /* 251 empty */ TDS_TYPEFLAG_INVALID,
439 /* 252 empty */ TDS_TYPEFLAG_INVALID,
440 /* 253 empty */ TDS_TYPEFLAG_INVALID,
441 /* 254 empty */ TDS_TYPEFLAG_INVALID,
442 /* 255 empty */ TDS_TYPEFLAG_INVALID,
443 };
444
445 #if 0
446 const unsigned char tds_type_flags_syb[256] = {
447 /* 0 empty */ TDS_TYPEFLAG_INVALID,
448 /* 1 empty */ TDS_TYPEFLAG_INVALID,
449 /* 2 empty */ TDS_TYPEFLAG_INVALID,
450 /* 3 empty */ TDS_TYPEFLAG_INVALID,
451 /* 4 empty */ TDS_TYPEFLAG_INVALID,
452 /* 5 empty */ TDS_TYPEFLAG_INVALID,
453 /* 6 empty */ TDS_TYPEFLAG_INVALID,
454 /* 7 empty */ TDS_TYPEFLAG_INVALID,
455 /* 8 empty */ TDS_TYPEFLAG_INVALID,
456 /* 9 empty */ TDS_TYPEFLAG_INVALID,
457 /* 10 empty */ TDS_TYPEFLAG_INVALID,
458 /* 11 empty */ TDS_TYPEFLAG_INVALID,
459 /* 12 empty */ TDS_TYPEFLAG_INVALID,
460 /* 13 empty */ TDS_TYPEFLAG_INVALID,
461 /* 14 empty */ TDS_TYPEFLAG_INVALID,
462 /* 15 empty */ TDS_TYPEFLAG_INVALID,
463 /* 16 empty */ TDS_TYPEFLAG_INVALID,
464 /* 17 empty */ TDS_TYPEFLAG_INVALID,
465 /* 18 empty */ TDS_TYPEFLAG_INVALID,
466 /* 19 empty */ TDS_TYPEFLAG_INVALID,
467 /* 20 empty */ TDS_TYPEFLAG_INVALID,
468 /* 21 empty */ TDS_TYPEFLAG_INVALID,
469 /* 22 empty */ TDS_TYPEFLAG_INVALID,
470 /* 23 empty */ TDS_TYPEFLAG_INVALID,
471 /* 24 empty */ TDS_TYPEFLAG_INVALID,
472 /* 25 empty */ TDS_TYPEFLAG_INVALID,
473 /* 26 empty */ TDS_TYPEFLAG_INVALID,
474 /* 27 empty */ TDS_TYPEFLAG_INVALID,
475 /* 28 empty */ TDS_TYPEFLAG_INVALID,
476 /* 29 empty */ TDS_TYPEFLAG_INVALID,
477 /* 30 empty */ TDS_TYPEFLAG_INVALID,
478 /* 31 SYBVOID */ TDS_TYPEFLAG_FIXED,
479 /* 32 empty */ TDS_TYPEFLAG_INVALID,
480 /* 33 empty */ TDS_TYPEFLAG_INVALID,
481 /* 34 SYBIMAGE */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
482 /* 35 SYBTEXT */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_COLLATE|TDS_TYPEFLAG_ASCII,
483 /* 36 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED|TDS_TYPEFLAG_NULLABLE,
484 /* 37 SYBVARBINARY */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
485 /* 38 SYBINTN */ TDS_TYPEFLAG_NULLABLE,
486 /* 39 SYBVARCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
487 /* 40 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED|TDS_TYPEFLAG_NULLABLE,
488 /* 41 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE,
489 /* 42 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE,
490 /* 43 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE,
491 /* 44 empty */ TDS_TYPEFLAG_INVALID,
492 /* 45 SYBBINARY */ TDS_TYPEFLAG_VARIABLE,
493 /* 46 SYBINTERVAL */ TDS_TYPEFLAG_FIXED,
494 /* 47 SYBCHAR */ TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
495 /* 48 SYBINT1 */ TDS_TYPEFLAG_FIXED,
496 /* 49 SYBDATE */ TDS_TYPEFLAG_FIXED,
497 /* 50 SYBBIT */ TDS_TYPEFLAG_FIXED,
498 /* 51 SYBTIME */ TDS_TYPEFLAG_FIXED,
499 /* 52 SYBINT2 */ TDS_TYPEFLAG_FIXED,
500 /* 53 empty */ TDS_TYPEFLAG_INVALID,
501 /* 54 empty */ TDS_TYPEFLAG_INVALID,
502 /* 55 empty */ TDS_TYPEFLAG_INVALID,
503 /* 56 SYBINT4 */ TDS_TYPEFLAG_FIXED,
504 /* 57 empty */ TDS_TYPEFLAG_INVALID,
505 /* 58 SYBDATETIME4 */ TDS_TYPEFLAG_FIXED,
506 /* 59 SYBREAL */ TDS_TYPEFLAG_FIXED,
507 /* 60 SYBMONEY */ TDS_TYPEFLAG_FIXED,
508 /* 61 SYBDATETIME */ TDS_TYPEFLAG_FIXED,
509 /* 62 SYBFLT8 */ TDS_TYPEFLAG_FIXED,
510 /* 63 empty */ TDS_TYPEFLAG_INVALID,
511 /* 64 SYBUINT1 */ TDS_TYPEFLAG_FIXED,
512 /* 65 SYBUINT2 */ TDS_TYPEFLAG_FIXED,
513 /* 66 SYBUINT4 */ TDS_TYPEFLAG_FIXED,
514 /* 67 SYBUINT8 */ TDS_TYPEFLAG_FIXED,
515 /* 68 SYBUINTN */ TDS_TYPEFLAG_NULLABLE,
516 /* 69 empty */ TDS_TYPEFLAG_INVALID,
517 /* 70 empty */ TDS_TYPEFLAG_INVALID,
518 /* 71 empty */ TDS_TYPEFLAG_INVALID,
519 /* 72 empty */ TDS_TYPEFLAG_INVALID,
520 /* 73 empty */ TDS_TYPEFLAG_INVALID,
521 /* 74 empty */ TDS_TYPEFLAG_INVALID,
522 /* 75 empty */ TDS_TYPEFLAG_INVALID,
523 /* 76 empty */ TDS_TYPEFLAG_INVALID,
524 /* 77 empty */ TDS_TYPEFLAG_INVALID,
525 /* 78 empty */ TDS_TYPEFLAG_INVALID,
526 /* 79 empty */ TDS_TYPEFLAG_INVALID,
527 /* 80 empty */ TDS_TYPEFLAG_INVALID,
528 /* 81 empty */ TDS_TYPEFLAG_INVALID,
529 /* 82 empty */ TDS_TYPEFLAG_INVALID,
530 /* 83 empty */ TDS_TYPEFLAG_INVALID,
531 /* 84 empty */ TDS_TYPEFLAG_INVALID,
532 /* 85 empty */ TDS_TYPEFLAG_INVALID,
533 /* 86 empty */ TDS_TYPEFLAG_INVALID,
534 /* 87 empty */ TDS_TYPEFLAG_INVALID,
535 /* 88 empty */ TDS_TYPEFLAG_INVALID,
536 /* 89 empty */ TDS_TYPEFLAG_INVALID,
537 /* 90 empty */ TDS_TYPEFLAG_INVALID,
538 /* 91 empty */ TDS_TYPEFLAG_INVALID,
539 /* 92 empty */ TDS_TYPEFLAG_INVALID,
540 /* 93 empty */ TDS_TYPEFLAG_INVALID,
541 /* 94 empty */ TDS_TYPEFLAG_INVALID,
542 /* 95 empty */ TDS_TYPEFLAG_INVALID,
543 /* 96 empty */ TDS_TYPEFLAG_INVALID,
544 /* 97 empty */ TDS_TYPEFLAG_INVALID,
545 /* 98 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
546 /* 99 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
547 /* 100 empty */ TDS_TYPEFLAG_INVALID,
548 /* 101 empty */ TDS_TYPEFLAG_INVALID,
549 /* 102 empty */ TDS_TYPEFLAG_INVALID,
550 /* 103 SYBSENSITIVITY */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
551 /* 104 SYBBOUNDARY */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
552 /* 105 empty */ TDS_TYPEFLAG_INVALID,
553 /* 106 SYBDECIMAL */ TDS_TYPEFLAG_NUMERIC,
554 /* 107 empty */ TDS_TYPEFLAG_INVALID,
555 /* 108 SYBNUMERIC */ TDS_TYPEFLAG_NUMERIC,
556 /* 109 SYBFLTN */ TDS_TYPEFLAG_NULLABLE,
557 /* 110 SYBMONEYN */ TDS_TYPEFLAG_NULLABLE,
558 /* 111 SYBDATETIMN */ TDS_TYPEFLAG_NULLABLE,
559 /* 112 empty */ TDS_TYPEFLAG_INVALID,
560 /* 113 empty */ TDS_TYPEFLAG_INVALID,
561 /* 114 empty */ TDS_TYPEFLAG_INVALID,
562 /* 115 empty */ TDS_TYPEFLAG_INVALID,
563 /* 116 empty */ TDS_TYPEFLAG_INVALID,
564 /* 117 empty */ TDS_TYPEFLAG_INVALID,
565 /* 118 empty */ TDS_TYPEFLAG_INVALID,
566 /* 119 empty */ TDS_TYPEFLAG_INVALID,
567 /* 120 empty */ TDS_TYPEFLAG_INVALID,
568 /* 121 empty */ TDS_TYPEFLAG_INVALID,
569 /* 122 SYBMONEY4 */ TDS_TYPEFLAG_FIXED,
570 /* 123 SYBDATEN */ TDS_TYPEFLAG_NULLABLE,
571 /* 124 empty */ TDS_TYPEFLAG_INVALID,
572 /* 125 empty */ TDS_TYPEFLAG_INVALID,
573 /* 126 empty */ TDS_TYPEFLAG_INVALID,
574 /* 127 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_FIXED,
575 /* 128 empty */ TDS_TYPEFLAG_INVALID,
576 /* 129 empty */ TDS_TYPEFLAG_INVALID,
577 /* 130 empty */ TDS_TYPEFLAG_INVALID,
578 /* 131 empty */ TDS_TYPEFLAG_INVALID,
579 /* 132 empty */ TDS_TYPEFLAG_INVALID,
580 /* 133 empty */ TDS_TYPEFLAG_INVALID,
581 /* 134 empty */ TDS_TYPEFLAG_INVALID,
582 /* 135 empty */ TDS_TYPEFLAG_INVALID,
583 /* 136 empty */ TDS_TYPEFLAG_INVALID,
584 /* 137 empty */ TDS_TYPEFLAG_INVALID,
585 /* 138 empty */ TDS_TYPEFLAG_INVALID,
586 /* 139 empty */ TDS_TYPEFLAG_INVALID,
587 /* 140 empty */ TDS_TYPEFLAG_INVALID,
588 /* 141 empty */ TDS_TYPEFLAG_INVALID,
589 /* 142 empty */ TDS_TYPEFLAG_INVALID,
590 /* 143 empty */ TDS_TYPEFLAG_INVALID,
591 /* 144 empty */ TDS_TYPEFLAG_INVALID,
592 /* 145 empty */ TDS_TYPEFLAG_INVALID,
593 /* 146 empty */ TDS_TYPEFLAG_INVALID,
594 /* 147 SYBTIMEN */ TDS_TYPEFLAG_NULLABLE,
595 /* 148 empty */ TDS_TYPEFLAG_INVALID,
596 /* 149 empty */ TDS_TYPEFLAG_INVALID,
597 /* 150 empty */ TDS_TYPEFLAG_INVALID,
598 /* 151 empty */ TDS_TYPEFLAG_INVALID,
599 /* 152 empty */ TDS_TYPEFLAG_INVALID,
600 /* 153 empty */ TDS_TYPEFLAG_INVALID,
601 /* 154 empty */ TDS_TYPEFLAG_INVALID,
602 /* 155 empty */ TDS_TYPEFLAG_INVALID,
603 /* 156 empty */ TDS_TYPEFLAG_INVALID,
604 /* 157 empty */ TDS_TYPEFLAG_INVALID,
605 /* 158 empty */ TDS_TYPEFLAG_INVALID,
606 /* 159 empty */ TDS_TYPEFLAG_INVALID,
607 /* 160 empty */ TDS_TYPEFLAG_INVALID,
608 /* 161 empty */ TDS_TYPEFLAG_INVALID,
609 /* 162 empty */ TDS_TYPEFLAG_INVALID,
610 /* 163 SYBXML */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
611 /* 164 empty */ TDS_TYPEFLAG_INVALID,
612 /* 165 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
613 /* 166 empty */ TDS_TYPEFLAG_INVALID,
614 /* 167 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
615 /* 168 empty */ TDS_TYPEFLAG_INVALID,
616 /* 169 empty */ TDS_TYPEFLAG_INVALID,
617 /* 170 empty */ TDS_TYPEFLAG_INVALID,
618 /* 171 empty */ TDS_TYPEFLAG_INVALID,
619 /* 172 empty */ TDS_TYPEFLAG_INVALID,
620 /* 173 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
621 /* 174 SYBUNITEXT */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
622 /* 175 SYBLONGCHAR */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_ASCII,
623 /* 176 SYBSINT1 */ TDS_TYPEFLAG_FIXED,
624 /* 177 empty */ TDS_TYPEFLAG_INVALID,
625 /* 178 empty */ TDS_TYPEFLAG_INVALID,
626 /* 179 empty */ TDS_TYPEFLAG_INVALID,
627 /* 180 empty */ TDS_TYPEFLAG_INVALID,
628 /* 181 empty */ TDS_TYPEFLAG_INVALID,
629 /* 182 empty */ TDS_TYPEFLAG_INVALID,
630 /* 183 empty */ TDS_TYPEFLAG_INVALID,
631 /* 184 empty */ TDS_TYPEFLAG_INVALID,
632 /* 185 empty */ TDS_TYPEFLAG_INVALID,
633 /* 186 empty */ TDS_TYPEFLAG_INVALID,
634 /* 187 empty */ TDS_TYPEFLAG_INVALID,
635 /* 188 empty */ TDS_TYPEFLAG_INVALID,
636 /* 189 empty */ TDS_TYPEFLAG_INVALID,
637 /* 190 empty */ TDS_TYPEFLAG_INVALID,
638 /* 191 SYB5INT8 */ TDS_TYPEFLAG_FIXED,
639 /* 192 empty */ TDS_TYPEFLAG_INVALID,
640 /* 193 empty */ TDS_TYPEFLAG_INVALID,
641 /* 194 empty */ TDS_TYPEFLAG_INVALID,
642 /* 195 empty */ TDS_TYPEFLAG_INVALID,
643 /* 196 empty */ TDS_TYPEFLAG_INVALID,
644 /* 197 empty */ TDS_TYPEFLAG_INVALID,
645 /* 198 empty */ TDS_TYPEFLAG_INVALID,
646 /* 199 empty */ TDS_TYPEFLAG_INVALID,
647 /* 200 empty */ TDS_TYPEFLAG_INVALID,
648 /* 201 empty */ TDS_TYPEFLAG_INVALID,
649 /* 202 empty */ TDS_TYPEFLAG_INVALID,
650 /* 203 empty */ TDS_TYPEFLAG_INVALID,
651 /* 204 empty */ TDS_TYPEFLAG_INVALID,
652 /* 205 empty */ TDS_TYPEFLAG_INVALID,
653 /* 206 empty */ TDS_TYPEFLAG_INVALID,
654 /* 207 empty */ TDS_TYPEFLAG_INVALID,
655 /* 208 empty */ TDS_TYPEFLAG_INVALID,
656 /* 209 empty */ TDS_TYPEFLAG_INVALID,
657 /* 210 empty */ TDS_TYPEFLAG_INVALID,
658 /* 211 empty */ TDS_TYPEFLAG_INVALID,
659 /* 212 empty */ TDS_TYPEFLAG_INVALID,
660 /* 213 empty */ TDS_TYPEFLAG_INVALID,
661 /* 214 empty */ TDS_TYPEFLAG_INVALID,
662 /* 215 empty */ TDS_TYPEFLAG_INVALID,
663 /* 216 empty */ TDS_TYPEFLAG_INVALID,
664 /* 217 empty */ TDS_TYPEFLAG_INVALID,
665 /* 218 empty */ TDS_TYPEFLAG_INVALID,
666 /* 219 empty */ TDS_TYPEFLAG_INVALID,
667 /* 220 empty */ TDS_TYPEFLAG_INVALID,
668 /* 221 empty */ TDS_TYPEFLAG_INVALID,
669 /* 222 empty */ TDS_TYPEFLAG_INVALID,
670 /* 223 empty */ TDS_TYPEFLAG_INVALID,
671 /* 224 empty */ TDS_TYPEFLAG_INVALID,
672 /* 225 SYBLONGBINARY */ TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
673 /* 226 empty */ TDS_TYPEFLAG_INVALID,
674 /* 227 empty */ TDS_TYPEFLAG_INVALID,
675 /* 228 empty */ TDS_TYPEFLAG_INVALID,
676 /* 229 empty */ TDS_TYPEFLAG_INVALID,
677 /* 230 empty */ TDS_TYPEFLAG_INVALID,
678 /* 231 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
679 /* 232 empty */ TDS_TYPEFLAG_INVALID,
680 /* 233 empty */ TDS_TYPEFLAG_INVALID,
681 /* 234 empty */ TDS_TYPEFLAG_INVALID,
682 /* 235 empty */ TDS_TYPEFLAG_INVALID,
683 /* 236 empty */ TDS_TYPEFLAG_INVALID,
684 /* 237 empty */ TDS_TYPEFLAG_INVALID,
685 /* 238 empty */ TDS_TYPEFLAG_INVALID,
686 /* 239 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
687 /* 240 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE,
688 /* 241 empty */ TDS_TYPEFLAG_INVALID|TDS_TYPEFLAG_NULLABLE|TDS_TYPEFLAG_VARIABLE|TDS_TYPEFLAG_UNICODE,
689 /* 242 empty */ TDS_TYPEFLAG_INVALID,
690 /* 243 empty */ TDS_TYPEFLAG_INVALID,
691 /* 244 empty */ TDS_TYPEFLAG_INVALID,
692 /* 245 empty */ TDS_TYPEFLAG_INVALID,
693 /* 246 empty */ TDS_TYPEFLAG_INVALID,
694 /* 247 empty */ TDS_TYPEFLAG_INVALID,
695 /* 248 empty */ TDS_TYPEFLAG_INVALID,
696 /* 249 empty */ TDS_TYPEFLAG_INVALID,
697 /* 250 empty */ TDS_TYPEFLAG_INVALID,
698 /* 251 empty */ TDS_TYPEFLAG_INVALID,
699 /* 252 empty */ TDS_TYPEFLAG_INVALID,
700 /* 253 empty */ TDS_TYPEFLAG_INVALID,
701 /* 254 empty */ TDS_TYPEFLAG_INVALID,
702 /* 255 empty */ TDS_TYPEFLAG_INVALID,
703 };
704
705 const char *const tds_type_names[256] = {
706 /* 0 */ "",
707 /* 1 */ "",
708 /* 2 */ "",
709 /* 3 */ "",
710 /* 4 */ "",
711 /* 5 */ "",
712 /* 6 */ "",
713 /* 7 */ "",
714 /* 8 */ "",
715 /* 9 */ "",
716 /* 10 */ "",
717 /* 11 */ "",
718 /* 12 */ "",
719 /* 13 */ "",
720 /* 14 */ "",
721 /* 15 */ "",
722 /* 16 */ "",
723 /* 17 */ "",
724 /* 18 */ "",
725 /* 19 */ "",
726 /* 20 */ "",
727 /* 21 */ "",
728 /* 22 */ "",
729 /* 23 */ "",
730 /* 24 */ "",
731 /* 25 */ "",
732 /* 26 */ "",
733 /* 27 */ "",
734 /* 28 */ "",
735 /* 29 */ "",
736 /* 30 */ "",
737 /* 31 */ "SYBVOID",
738 /* 32 */ "",
739 /* 33 */ "",
740 /* 34 */ "SYBIMAGE",
741 /* 35 */ "SYBTEXT",
742 /* 36 */ "SYBUNIQUE",
743 /* 37 */ "SYBVARBINARY",
744 /* 38 */ "SYBINTN",
745 /* 39 */ "SYBVARCHAR",
746 /* 40 */ "SYBMSDATE",
747 /* 41 */ "SYBMSTIME",
748 /* 42 */ "SYBMSDATETIME2",
749 /* 43 */ "SYBMSDATETIMEOFFSET",
750 /* 44 */ "",
751 /* 45 */ "SYBBINARY",
752 /* 46 */ "SYBINTERVAL",
753 /* 47 */ "SYBCHAR",
754 /* 48 */ "SYBINT1",
755 /* 49 */ "SYBDATE",
756 /* 50 */ "SYBBIT",
757 /* 51 */ "SYBTIME",
758 /* 52 */ "SYBINT2",
759 /* 53 */ "",
760 /* 54 */ "",
761 /* 55 */ "",
762 /* 56 */ "SYBINT4",
763 /* 57 */ "",
764 /* 58 */ "SYBDATETIME4",
765 /* 59 */ "SYBREAL",
766 /* 60 */ "SYBMONEY",
767 /* 61 */ "SYBDATETIME",
768 /* 62 */ "SYBFLT8",
769 /* 63 */ "",
770 /* 64 */ "SYBUINT1",
771 /* 65 */ "SYBUINT2",
772 /* 66 */ "SYBUINT4",
773 /* 67 */ "SYBUINT8",
774 /* 68 */ "SYBUINTN",
775 /* 69 */ "",
776 /* 70 */ "",
777 /* 71 */ "",
778 /* 72 */ "",
779 /* 73 */ "",
780 /* 74 */ "",
781 /* 75 */ "",
782 /* 76 */ "",
783 /* 77 */ "",
784 /* 78 */ "",
785 /* 79 */ "",
786 /* 80 */ "",
787 /* 81 */ "",
788 /* 82 */ "",
789 /* 83 */ "",
790 /* 84 */ "",
791 /* 85 */ "",
792 /* 86 */ "",
793 /* 87 */ "",
794 /* 88 */ "",
795 /* 89 */ "",
796 /* 90 */ "",
797 /* 91 */ "",
798 /* 92 */ "",
799 /* 93 */ "",
800 /* 94 */ "",
801 /* 95 */ "",
802 /* 96 */ "",
803 /* 97 */ "",
804 /* 98 */ "SYBVARIANT",
805 /* 99 */ "SYBNTEXT",
806 /* 100 */ "",
807 /* 101 */ "",
808 /* 102 */ "",
809 /* 103 */ "SYBNVARCHAR or SYBSENSITIVITY",
810 /* 104 */ "SYBBITN or SYBBOUNDARY",
811 /* 105 */ "",
812 /* 106 */ "SYBDECIMAL",
813 /* 107 */ "",
814 /* 108 */ "SYBNUMERIC",
815 /* 109 */ "SYBFLTN",
816 /* 110 */ "SYBMONEYN",
817 /* 111 */ "SYBDATETIMN",
818 /* 112 */ "",
819 /* 113 */ "",
820 /* 114 */ "",
821 /* 115 */ "",
822 /* 116 */ "",
823 /* 117 */ "",
824 /* 118 */ "",
825 /* 119 */ "",
826 /* 120 */ "",
827 /* 121 */ "",
828 /* 122 */ "SYBMONEY4",
829 /* 123 */ "SYBDATEN",
830 /* 124 */ "",
831 /* 125 */ "",
832 /* 126 */ "",
833 /* 127 */ "SYBINT8",
834 /* 128 */ "",
835 /* 129 */ "",
836 /* 130 */ "",
837 /* 131 */ "",
838 /* 132 */ "",
839 /* 133 */ "",
840 /* 134 */ "",
841 /* 135 */ "",
842 /* 136 */ "",
843 /* 137 */ "",
844 /* 138 */ "",
845 /* 139 */ "",
846 /* 140 */ "",
847 /* 141 */ "",
848 /* 142 */ "",
849 /* 143 */ "",
850 /* 144 */ "",
851 /* 145 */ "",
852 /* 146 */ "",
853 /* 147 */ "SYBTIMEN",
854 /* 148 */ "",
855 /* 149 */ "",
856 /* 150 */ "",
857 /* 151 */ "",
858 /* 152 */ "",
859 /* 153 */ "",
860 /* 154 */ "",
861 /* 155 */ "",
862 /* 156 */ "",
863 /* 157 */ "",
864 /* 158 */ "",
865 /* 159 */ "",
866 /* 160 */ "",
867 /* 161 */ "",
868 /* 162 */ "",
869 /* 163 */ "SYBXML",
870 /* 164 */ "",
871 /* 165 */ "XSYBVARBINARY",
872 /* 166 */ "",
873 /* 167 */ "XSYBVARCHAR",
874 /* 168 */ "",
875 /* 169 */ "",
876 /* 170 */ "",
877 /* 171 */ "",
878 /* 172 */ "",
879 /* 173 */ "XSYBBINARY",
880 /* 174 */ "SYBUNITEXT",
881 /* 175 */ "XSYBCHAR or SYBLONGCHAR",
882 /* 176 */ "SYBSINT1",
883 /* 177 */ "",
884 /* 178 */ "",
885 /* 179 */ "",
886 /* 180 */ "",
887 /* 181 */ "",
888 /* 182 */ "",
889 /* 183 */ "",
890 /* 184 */ "",
891 /* 185 */ "",
892 /* 186 */ "",
893 /* 187 */ "",
894 /* 188 */ "",
895 /* 189 */ "",
896 /* 190 */ "",
897 /* 191 */ "SYB5INT8",
898 /* 192 */ "",
899 /* 193 */ "",
900 /* 194 */ "",
901 /* 195 */ "",
902 /* 196 */ "",
903 /* 197 */ "",
904 /* 198 */ "",
905 /* 199 */ "",
906 /* 200 */ "",
907 /* 201 */ "",
908 /* 202 */ "",
909 /* 203 */ "",
910 /* 204 */ "",
911 /* 205 */ "",
912 /* 206 */ "",
913 /* 207 */ "",
914 /* 208 */ "",
915 /* 209 */ "",
916 /* 210 */ "",
917 /* 211 */ "",
918 /* 212 */ "",
919 /* 213 */ "",
920 /* 214 */ "",
921 /* 215 */ "",
922 /* 216 */ "",
923 /* 217 */ "",
924 /* 218 */ "",
925 /* 219 */ "",
926 /* 220 */ "",
927 /* 221 */ "",
928 /* 222 */ "",
929 /* 223 */ "",
930 /* 224 */ "",
931 /* 225 */ "SYBLONGBINARY",
932 /* 226 */ "",
933 /* 227 */ "",
934 /* 228 */ "",
935 /* 229 */ "",
936 /* 230 */ "",
937 /* 231 */ "XSYBNVARCHAR",
938 /* 232 */ "",
939 /* 233 */ "",
940 /* 234 */ "",
941 /* 235 */ "",
942 /* 236 */ "",
943 /* 237 */ "",
944 /* 238 */ "",
945 /* 239 */ "XSYBNCHAR",
946 /* 240 */ "SYBMSUDT",
947 /* 241 */ "SYBMSXML",
948 /* 242 */ "",
949 /* 243 */ "",
950 /* 244 */ "",
951 /* 245 */ "",
952 /* 246 */ "",
953 /* 247 */ "",
954 /* 248 */ "",
955 /* 249 */ "",
956 /* 250 */ "",
957 /* 251 */ "",
958 /* 252 */ "",
959 /* 253 */ "",
960 /* 254 */ "",
961 /* 255 */ "",
962 };
963 #endif
tds_get_conversion_type
int tds_get_conversion_type(int srctype, int colsize)
Return type suitable for conversions (convert all nullable types to fixed type)
Definition: tds_types.h:123
tds_connection
Definition: tds.h:1031
tds_get_size_by_type
int tds_get_size_by_type(int servertype)
Return the number of bytes needed by specified type.
Definition: tds_types.h:9
tds_get_varint_size
int tds_get_varint_size(TDSCONNECTION *conn, int datatype)
tds_get_varint_size() returns the size of a variable length integer returned in a TDS 7...
Definition: tds_types.h:55