~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to sql/field.cc

  • Committer: Brian Aker
  • Date: 2008-07-05 23:24:38 UTC
  • Revision ID: brian@tangent.org-20080705232438-7rcpgi4s0m80n25x
Removing final piece of BIT type

Show diffs side-by-side

added added

removed removed

Lines of Context:
64
64
  following #defines describe that gap and how to canculate number of fields
65
65
  and index of field in thia array.
66
66
*/
67
 
#define FIELDTYPE_TEAR_FROM (MYSQL_TYPE_BIT + 1)
 
67
#define FIELDTYPE_TEAR_FROM (MYSQL_TYPE_VARCHAR + 1)
68
68
#define FIELDTYPE_TEAR_TO   (MYSQL_TYPE_NEWDECIMAL - 1)
69
69
#define FIELDTYPE_NUM (FIELDTYPE_TEAR_FROM + (255 - FIELDTYPE_TEAR_TO))
70
70
inline int field_type2index (enum_field_types field_type)
95
95
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
96
96
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
97
97
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
98
 
    MYSQL_TYPE_VARCHAR,
99
98
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
100
99
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
101
100
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
125
124
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_TINY,
126
125
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
127
126
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
128
 
    MYSQL_TYPE_VARCHAR,
129
127
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
130
128
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
131
129
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
155
153
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_SHORT,
156
154
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
157
155
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
158
 
    MYSQL_TYPE_VARCHAR,
159
156
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
160
157
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
161
158
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
185
182
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_LONG,
186
183
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
187
184
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
188
 
    MYSQL_TYPE_VARCHAR,
189
185
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
190
186
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
191
187
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
215
211
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_FLOAT,
216
212
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
217
213
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
218
 
    MYSQL_TYPE_VARCHAR,
219
214
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
220
215
    MYSQL_TYPE_DOUBLE,      MYSQL_TYPE_VARCHAR,
221
216
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
245
240
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_DOUBLE,
246
241
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
247
242
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
248
 
    MYSQL_TYPE_VARCHAR,
249
243
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
250
244
    MYSQL_TYPE_DOUBLE,      MYSQL_TYPE_VARCHAR,
251
245
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
304
298
    MYSQL_TYPE_DATETIME,    MYSQL_TYPE_VARCHAR,
305
299
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
306
300
    MYSQL_TYPE_NEWDATE,     MYSQL_TYPE_VARCHAR,
307
 
    MYSQL_TYPE_VARCHAR,
308
301
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
309
302
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
310
303
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
334
327
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_LONGLONG,
335
328
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
336
329
    MYSQL_TYPE_NEWDATE,     MYSQL_TYPE_VARCHAR,
337
 
    MYSQL_TYPE_VARCHAR,
338
330
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
339
331
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
340
332
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
364
356
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_INT24,
365
357
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
366
358
    MYSQL_TYPE_NEWDATE,     MYSQL_TYPE_VARCHAR,
367
 
    MYSQL_TYPE_VARCHAR,
368
359
  //MYSQL_TYPE_NEWDECIMAL    MYSQL_TYPE_ENUM
369
360
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
370
361
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
394
385
    MYSQL_TYPE_DATETIME,    MYSQL_TYPE_VARCHAR,
395
386
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
396
387
    MYSQL_TYPE_NEWDATE,     MYSQL_TYPE_VARCHAR,
397
 
    MYSQL_TYPE_VARCHAR,
398
388
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
399
389
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
400
390
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
424
414
    MYSQL_TYPE_DATETIME,    MYSQL_TYPE_VARCHAR,
425
415
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
426
416
    MYSQL_TYPE_NEWDATE,     MYSQL_TYPE_VARCHAR,
427
 
    MYSQL_TYPE_VARCHAR,
428
417
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
429
418
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
430
419
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
454
443
    MYSQL_TYPE_DATETIME,    MYSQL_TYPE_VARCHAR,
455
444
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
456
445
    MYSQL_TYPE_NEWDATE,     MYSQL_TYPE_VARCHAR,
457
 
    MYSQL_TYPE_VARCHAR,
458
446
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
459
447
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
460
448
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
484
472
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_YEAR,
485
473
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
486
474
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
487
 
    MYSQL_TYPE_VARCHAR,
488
475
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
489
476
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
490
477
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
514
501
    MYSQL_TYPE_DATETIME,    MYSQL_TYPE_VARCHAR,
515
502
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
516
503
    MYSQL_TYPE_NEWDATE,     MYSQL_TYPE_VARCHAR,
517
 
    MYSQL_TYPE_VARCHAR,
518
504
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
519
505
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
520
506
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
544
530
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
545
531
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
546
532
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
547
 
    MYSQL_TYPE_VARCHAR,
548
533
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
549
534
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
550
535
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
574
559
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_NEWDECIMAL,
575
560
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
576
561
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
577
 
    MYSQL_TYPE_VARCHAR,
578
562
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
579
563
    MYSQL_TYPE_NEWDECIMAL,  MYSQL_TYPE_VARCHAR,
580
564
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
604
588
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
605
589
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
606
590
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
607
 
    MYSQL_TYPE_VARCHAR,
608
591
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
609
592
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
610
593
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
634
617
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
635
618
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
636
619
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
637
 
    MYSQL_TYPE_VARCHAR,
638
620
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
639
621
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
640
622
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
664
646
    MYSQL_TYPE_TINY_BLOB,   MYSQL_TYPE_TINY_BLOB,
665
647
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
666
648
    MYSQL_TYPE_TINY_BLOB,   MYSQL_TYPE_TINY_BLOB,
667
 
    MYSQL_TYPE_TINY_BLOB,
668
649
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
669
650
    MYSQL_TYPE_TINY_BLOB,   MYSQL_TYPE_TINY_BLOB,
670
651
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
694
675
    MYSQL_TYPE_MEDIUM_BLOB, MYSQL_TYPE_MEDIUM_BLOB,
695
676
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
696
677
    MYSQL_TYPE_MEDIUM_BLOB, MYSQL_TYPE_MEDIUM_BLOB,
697
 
    MYSQL_TYPE_MEDIUM_BLOB,
698
678
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
699
679
    MYSQL_TYPE_MEDIUM_BLOB, MYSQL_TYPE_MEDIUM_BLOB,
700
680
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
724
704
    MYSQL_TYPE_LONG_BLOB,   MYSQL_TYPE_LONG_BLOB,
725
705
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
726
706
    MYSQL_TYPE_LONG_BLOB,   MYSQL_TYPE_LONG_BLOB,
727
 
    MYSQL_TYPE_LONG_BLOB,
728
707
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
729
708
    MYSQL_TYPE_LONG_BLOB,   MYSQL_TYPE_LONG_BLOB,
730
709
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
754
733
    MYSQL_TYPE_BLOB,        MYSQL_TYPE_BLOB,
755
734
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
756
735
    MYSQL_TYPE_BLOB,        MYSQL_TYPE_BLOB,
757
 
    MYSQL_TYPE_BLOB,
758
736
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
759
737
    MYSQL_TYPE_BLOB,        MYSQL_TYPE_BLOB,
760
738
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
784
762
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
785
763
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
786
764
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
787
 
    MYSQL_TYPE_VARCHAR,
788
765
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
789
766
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
790
767
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
814
791
    MYSQL_TYPE_STRING,      MYSQL_TYPE_STRING,
815
792
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
816
793
    MYSQL_TYPE_STRING,      MYSQL_TYPE_VARCHAR,
817
 
    MYSQL_TYPE_STRING,
818
794
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
819
795
    MYSQL_TYPE_STRING,      MYSQL_TYPE_STRING,
820
796
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
844
820
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
845
821
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
846
822
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
847
 
    MYSQL_TYPE_VARCHAR,
848
823
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
849
824
    MYSQL_TYPE_VARCHAR,     MYSQL_TYPE_VARCHAR,
850
825
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB
896
871
  STRING_RESULT,            INT_RESULT,
897
872
  //MYSQL_TYPE_NEWDATE      MYSQL_TYPE_VARCHAR
898
873
  STRING_RESULT,            STRING_RESULT,
899
 
  STRING_RESULT,
900
874
  //MYSQL_TYPE_NEWDECIMAL   MYSQL_TYPE_ENUM
901
875
  DECIMAL_RESULT,           STRING_RESULT,
902
876
  //MYSQL_TYPE_SET          MYSQL_TYPE_TINY_BLOB