xref: /aoo42x/main/mysqlc/source/mysqlc_types.cxx (revision 079eb577)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 #include <stdio.h>
23 #include <com/sun/star/sdbc/DataType.hpp>
24 #include <com/sun/star/sdbc/ColumnValue.hpp>
25 #include <com/sun/star/sdbc/ColumnSearch.hpp>
26 #include "mysqlc_types.hxx"
27 
28 using namespace com::sun::star::sdbc;
29 
30 TypeInfoDef mysqlc_types[] = {
31 
32     // ------------- MySQL-Type: BIT. SDBC-Type: Bit -------------
33     {
34         "BIT",                                       // Typename
35         com::sun::star::sdbc::DataType::BIT,         // sdbc-type
36         1,                                           // Precision
37         "",                                          // Literal prefix
38         "",                                          // Literal suffix
39         "",                                          // Create params
40         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
41         sal_True,                                    // case sensitive
42         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
43         sal_False,                                   // unsignable
44         sal_False,                                   // fixed_prec_scale
45         sal_False,                                   // auto_increment
46         "BIT",                                       // local type name
47         0,                                           // minimum scale
48         0,                                           // maximum scale
49         0,                                           // sql data type (unsued)
50         0,                                           // sql datetime sub (unsued)
51         10                                           // num prec radix
52      },
53 
54     // ------------ MySQL-Type: BOOL. SDBC-Type: Bit -------------
55     {
56         "BOOL",                                      // Typename
57         com::sun::star::sdbc::DataType::BIT,         // sdbc-type
58         1,                                           // Precision
59         "",                                          // Literal prefix
60         "",                                          // Literal suffix
61         "",                                          // Create params
62         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
63         sal_True,                                    // case sensitive
64         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
65         sal_False,                                   // unsignable
66         sal_False,                                   // fixed_prec_scale
67         sal_False,                                   // auto_increment
68         "BOOL",                                      // local type name
69         0,                                           // minimum scale
70         0,                                           // maximum scale
71         0,                                           // sql data type (unsued)
72         0,                                           // sql datetime sub (unsued)
73         10                                           // num prec radix
74      },
75 
76     // --------- MySQL-Type: TINYINT SDBC-Type: TINYINT ----------
77     {
78         "TINYINT",                                   // Typename
79         com::sun::star::sdbc::DataType::TINYINT,     // sdbc-type
80         3,                                           // Precision
81         "",                                          // Literal prefix
82         "",                                          // Literal suffix
83         "[(M)] [UNSIGNED] [ZEROFILL]",               // Create params
84         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
85         sal_False,                                   // case sensitive
86         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
87         sal_True,                                    // unsignable
88         sal_False,                                   // fixed_prec_scale
89         sal_True,                                    // auto_increment
90         "TINYINT",                                   // local type name
91         0,                                           // minimum scale
92         0,                                           // maximum scale
93         0,                                           // sql data type (unsued)
94         0,                                           // sql datetime sub (unsued)
95         10                                           // num prec radix
96      },
97 
98     // ----------- MySQL-Type: BIGINT SDBC-Type: BIGINT ----------
99     {
100         "BIGINT",                                    // Typename
101         com::sun::star::sdbc::DataType::BIGINT,      // sdbc-type
102         19,                                          // Precision
103         "",                                          // Literal prefix
104         "",                                          // Literal suffix
105         "[(M)] [UNSIGNED] [ZEROFILL]",               // Create params
106         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
107         sal_False,                                   // case sensitive
108         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
109         sal_True,                                    // unsignable
110         sal_False,                                   // fixed_prec_scale
111         sal_True,                                    // auto_increment
112         "BIGINT",                                    // local type name
113         0,                                           // minimum scale
114         0,                                           // maximum scale
115         0,                                           // sql data type (unsued)
116         0,                                           // sql datetime sub (unsued)
117         10                                           // num prec radix
118      },
119 
120     // ----------- MySQL-Type: LONG VARBINARY SDBC-Type: LONGVARBINARY ----------
121     {
122         "LONG VARBINARY",                            // Typename
123         com::sun::star::sdbc::DataType::LONGVARBINARY, // sdbc-type
124         16777215,                                    // Precision
125         "'",                                          // Literal prefix
126         "'",                                          // Literal suffix
127         "",                                          // Create params
128         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
129         sal_True,                                    // case sensitive
130         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
131         sal_False,                                   // unsignable
132         sal_False,                                   // fixed_prec_scale
133         sal_False,                                   // auto_increment
134         "LONG VARBINARY",                            // local type name
135         0,                                           // minimum scale
136         0,                                           // maximum scale
137         0,                                           // sql data type (unsued)
138         0,                                           // sql datetime sub (unsued)
139         10                                           // num prec radix
140      },
141 
142     // ----------- MySQL-Type: MEDIUMBLOB SDBC-Type: LONGVARBINARY ----------
143     {
144         "MEDIUMBLOB",                                // Typename
145         com::sun::star::sdbc::DataType::LONGVARBINARY, // sdbc-type
146         16777215,                                    // Precision
147         "'",                                          // Literal prefix
148         "'",                                          // Literal suffix
149         "",                                          // Create params
150         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
151         sal_True,                                    // case sensitive
152         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
153         sal_False,                                   // unsignable
154         sal_False,                                   // fixed_prec_scale
155         sal_False,                                   // auto_increment
156         "MEDIUMBLOB",                                // local type name
157         0,                                           // minimum scale
158         0,                                           // maximum scale
159         0,                                           // sql data type (unsued)
160         0,                                           // sql datetime sub (unsued)
161         10                                           // num prec radix
162      },
163 
164     // ----------- MySQL-Type: LONGBLOB SDBC-Type: LONGVARBINARY ----------
165     {
166         "LONGBLOB",                                  // Typename
167         com::sun::star::sdbc::DataType::LONGVARBINARY, // sdbc-type
168         0xFFFFFFFF,                                  // Precision
169         "'",                                          // Literal prefix
170         "'",                                          // Literal suffix
171         "",                                          // Create params
172         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
173         sal_True,                                    // case sensitive
174         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
175         sal_False,                                   // unsignable
176         sal_False,                                   // fixed_prec_scale
177         sal_False,                                   // auto_increment
178         "LONGBLOB",                                  // local type name
179         0,                                           // minimum scale
180         0,                                           // maximum scale
181         0,                                           // sql data type (unsued)
182         0,                                           // sql datetime sub (unsued)
183         10                                           // num prec radix
184      },
185 
186     // ----------- MySQL-Type: BLOB SDBC-Type: LONGVARBINARY ----------
187     {
188         "BLOB",                                      // Typename
189         com::sun::star::sdbc::DataType::LONGVARBINARY, // sdbc-type
190         0xFFFF,                                      // Precision
191         "'",                                          // Literal prefix
192         "'",                                          // Literal suffix
193         "",                                          // Create params
194         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
195         sal_True,                                    // case sensitive
196         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
197         sal_False,                                   // unsignable
198         sal_False,                                   // fixed_prec_scale
199         sal_False,                                   // auto_increment
200         "BLOB",                                      // local type name
201         0,                                           // minimum scale
202         0,                                           // maximum scale
203         0,                                           // sql data type (unsued)
204         0,                                           // sql datetime sub (unsued)
205         10                                           // num prec radix
206      },
207 
208     // ----------- MySQL-Type: TINYBLOB SDBC-Type: LONGVARBINARY ----------
209     {
210         "TINYBLOB",                                  // Typename
211         com::sun::star::sdbc::DataType::LONGVARBINARY, // sdbc-type
212         0xFF,                                         // Precision
213         "'",                                          // Literal prefix
214         "'",                                          // Literal suffix
215         "",                                          // Create params
216         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
217         sal_True,                                    // case sensitive
218         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
219         sal_False,                                   // unsignable
220         sal_False,                                   // fixed_prec_scale
221         sal_False,                                   // auto_increment
222         "TINYBLOB",                                  // local type name
223         0,                                           // minimum scale
224         0,                                           // maximum scale
225         0,                                           // sql data type (unsued)
226         0,                                           // sql datetime sub (unsued)
227         10                                           // num prec radix
228      },
229 
230     // ----------- MySQL-Type: VARBINARY SDBC-Type: VARBINARY ----------
231     {
232         "VARBINARY",                                 // Typename
233         com::sun::star::sdbc::DataType::VARBINARY,   // sdbc-type
234         0xFF,                                        // Precision
235         "'",                                          // Literal prefix
236         "'",                                          // Literal suffix
237         "(M)",                                       // Create params
238         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
239         sal_True,                                    // case sensitive
240         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
241         sal_False,                                   // unsignable
242         sal_False,                                   // fixed_prec_scale
243         sal_False,                                   // auto_increment
244         "VARBINARY",                                 // local type name
245         0,                                           // minimum scale
246         0,                                           // maximum scale
247         0,                                           // sql data type (unsued)
248         0,                                           // sql datetime sub (unsued)
249         10                                           // num prec radix
250      },
251 
252     // ----------- MySQL-Type: BINARY SDBC-Type: BINARY ----------
253     {
254         "BINARY",                                    // Typename
255         com::sun::star::sdbc::DataType::BINARY,      // sdbc-type
256         0xFF,                                        // Precision
257         "'",                                          // Literal prefix
258         "'",                                          // Literal suffix
259         "(M)",                                       // Create params
260         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
261         sal_True,                                    // case sensitive
262         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
263         sal_False,                                   // unsignable
264         sal_False,                                   // fixed_prec_scale
265         sal_False,                                   // auto_increment
266         "VARBINARY",                                 // local type name
267         0,                                           // minimum scale
268         0,                                           // maximum scale
269         0,                                           // sql data type (unsued)
270         0,                                           // sql datetime sub (unsued)
271         10                                           // num prec radix
272      },
273 
274     // ----------- MySQL-Type: LONG VARCHAR SDBC-Type: LONG VARCHAR ----------
275     {
276         "LONG VARCHAR",                              // Typename
277         com::sun::star::sdbc::DataType::LONGVARCHAR, // sdbc-type
278         0xFFFFFF,                                    // Precision
279         "'",                                          // Literal prefix
280         "'",                                          // Literal suffix
281         "",                                          // Create params
282         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
283         sal_False,                                   // case sensitive
284         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
285         sal_False,                                   // unsignable
286         sal_False,                                   // fixed_prec_scale
287         sal_False,                                   // auto_increment
288         "LONG VARCHAR",                              // local type name
289         0,                                           // minimum scale
290         0,                                           // maximum scale
291         0,                                           // sql data type (unsued)
292         0,                                           // sql datetime sub (unsued)
293         10                                           // num prec radix
294      },
295 
296     // ----------- MySQL-Type: MEDIUMTEXT SDBC-Type: LONG VARCHAR ----------
297     {
298         "MEDIUMTEXT",                                // Typename
299         com::sun::star::sdbc::DataType::LONGVARCHAR, // sdbc-type
300         0xFFFFFF,                                    // Precision
301         "'",                                          // Literal prefix
302         "'",                                          // Literal suffix
303         "",                                          // Create params
304         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
305         sal_False,                                   // case sensitive
306         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
307         sal_False,                                   // unsignable
308         sal_False,                                   // fixed_prec_scale
309         sal_False,                                   // auto_increment
310         "MEDIUMTEXT",                                // local type name
311         0,                                           // minimum scale
312         0,                                           // maximum scale
313         0,                                           // sql data type (unsued)
314         0,                                           // sql datetime sub (unsued)
315         10                                           // num prec radix
316      },
317 
318     // ----------- MySQL-Type: LONGTEXT SDBC-Type: LONG VARCHAR ----------
319     {
320         "LONGTEXT",                                  // Typename
321         com::sun::star::sdbc::DataType::LONGVARCHAR, // sdbc-type
322         0xFFFFFF,                                    // Precision
323         "'",                                          // Literal prefix
324         "'",                                          // Literal suffix
325         "",                                          // Create params
326         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
327         sal_False,                                   // case sensitive
328         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
329         sal_False,                                   // unsignable
330         sal_False,                                   // fixed_prec_scale
331         sal_False,                                   // auto_increment
332         "LONGTEXT",                                  // local type name
333         0,                                           // minimum scale
334         0,                                           // maximum scale
335         0,                                           // sql data type (unsued)
336         0,                                           // sql datetime sub (unsued)
337         10                                           // num prec radix
338      },
339 
340     // ----------- MySQL-Type: TEXT SDBC-Type: LONG VARCHAR ----------
341     {
342         "TEXT",                                      // Typename
343         com::sun::star::sdbc::DataType::LONGVARCHAR, // sdbc-type
344         0xFFFF,                                      // Precision
345         "'",                                          // Literal prefix
346         "'",                                          // Literal suffix
347         "",                                          // Create params
348         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
349         sal_False,                                   // case sensitive
350         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
351         sal_False,                                   // unsignable
352         sal_False,                                   // fixed_prec_scale
353         sal_False,                                   // auto_increment
354         "TEXT",                                      // local type name
355         0,                                           // minimum scale
356         0,                                           // maximum scale
357         0,                                           // sql data type (unsued)
358         0,                                           // sql datetime sub (unsued)
359         10                                           // num prec radix
360      },
361 
362     // ----------- MySQL-Type: TINYTEXT SDBC-Type: LONG VARCHAR ----------
363     {
364         "TINYTEXT",                                  // Typename
365         com::sun::star::sdbc::DataType::LONGVARCHAR, // sdbc-type
366         0xFF,                                        // Precision
367         "'",                                          // Literal prefix
368         "'",                                          // Literal suffix
369         "",                                          // Create params
370         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
371         sal_False,                                   // case sensitive
372         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
373         sal_False,                                   // unsignable
374         sal_False,                                   // fixed_prec_scale
375         sal_False,                                   // auto_increment
376         "TINYTEXT",                                  // local type name
377         0,                                           // minimum scale
378         0,                                           // maximum scale
379         0,                                           // sql data type (unsued)
380         0,                                           // sql datetime sub (unsued)
381         10                                           // num prec radix
382      },
383 
384     // ----------- MySQL-Type: CHAR SDBC-Type: CHAR ----------
385     {
386         "CHAR",                                      // Typename
387         com::sun::star::sdbc::DataType::CHAR,        // sdbc-type
388         0xFF,                                        // Precision
389         "'",                                          // Literal prefix
390         "'",                                          // Literal suffix
391         "(M)",                                       // Create params
392         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
393         sal_False,                                   // case sensitive
394         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
395         sal_False,                                   // unsignable
396         sal_False,                                   // fixed_prec_scale
397         sal_False,                                   // auto_increment
398         "NUMERIC",                                   // local type name
399         0,                                           // minimum scale
400         0,                                           // maximum scale
401         0,                                           // sql data type (unsued)
402         0,                                           // sql datetime sub (unsued)
403         10                                           // num prec radix
404      },
405 
406     // ----------- MySQL-Type: DECIMAL SDBC-Type: DECIMAL ----------
407     {
408         "DECIMAL",                                   // Typename
409         com::sun::star::sdbc::DataType::DECIMAL,     // sdbc-type
410         17,                                          // Precision
411         "",                                          // Literal prefix
412         "",                                          // Literal suffix
413         "[(M[,D])] [ZEROFILL]",                      // Create params
414         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
415         sal_False,                                   // case sensitive
416         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
417         sal_False,                                   // unsignable
418         sal_False,                                   // fixed_prec_scale
419         sal_True,                                    // auto_increment
420         "DECIMAL",                                   // local type name
421         -308,                                        // minimum scale
422         308,                                         // maximum scale
423         0,                                           // sql data type (unsued)
424         0,                                           // sql datetime sub (unsued)
425         10                                           // num prec radix
426      },
427 
428     // ----------- MySQL-Type: NUMERIC SDBC-Type: NUMERIC ----------
429     {
430         "NUMERIC",                                   // Typename
431         com::sun::star::sdbc::DataType::NUMERIC,     // sdbc-type
432         17,                                          // Precision
433         "",                                          // Literal prefix
434         "",                                          // Literal suffix
435         "[(M[,D])] [ZEROFILL]",                      // Create params
436         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
437         sal_False,                                   // case sensitive
438         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
439         sal_False,                                   // unsignable
440         sal_False,                                   // fixed_prec_scale
441         sal_True,                                    // auto_increment
442         "NUMERIC",                                   // local type name
443         -308,                                        // minimum scale
444         308,                                         // maximum scale
445         0,                                           // sql data type (unsued)
446         0,                                           // sql datetime sub (unsued)
447         10                                           // num prec radix
448      },
449 
450     // ----------- MySQL-Type: INTEGER SDBC-Type: INTEGER ----------
451     {
452         "INTEGER",                                   // Typename
453         com::sun::star::sdbc::DataType::INTEGER,     // sdbc-type
454         10,                                          // Precision
455         "",                                          // Literal prefix
456         "",                                          // Literal suffix
457         "[(M)] [UNSIGNED] [ZEROFILL]",               // Create params
458         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
459         sal_False,                                   // case sensitive
460         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
461         sal_True,                                    // unsignable
462         sal_False,                                   // fixed_prec_scale
463         sal_True,                                    // auto_increment
464         "INTEGER",                                   // local type name
465         0,                                           // minimum scale
466         0,                                           // maximum scale
467         0,                                           // sql data type (unsued)
468         0,                                           // sql datetime sub (unsued)
469         10                                           // num prec radix
470      },
471 
472     // ----------- MySQL-Type: INT SDBC-Type: INTEGER ----------
473     {
474         "INT",                                       // Typename
475         com::sun::star::sdbc::DataType::INTEGER,     // sdbc-type
476         10,                                          // Precision
477         "",                                          // Literal prefix
478         "",                                          // Literal suffix
479         "[(M)] [UNSIGNED] [ZEROFILL]",               // Create params
480         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
481         sal_False,                                   // case sensitive
482         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
483         sal_True,                                    // unsignable
484         sal_False,                                   // fixed_prec_scale
485         sal_True,                                    // auto_increment
486         "INT",                                       // local type name
487         0,                                           // minimum scale
488         0,                                           // maximum scale
489         0,                                           // sql data type (unsued)
490         0,                                           // sql datetime sub (unsued)
491         10                                           // num prec radix
492      },
493 
494     // ----------- MySQL-Type: MEDIUMINT SDBC-Type: INTEGER ----------
495     {
496         "MEDIUMINT",                                 // Typename
497         com::sun::star::sdbc::DataType::INTEGER,     // sdbc-type
498          7,                                          // Precision
499         "",                                          // Literal prefix
500         "",                                          // Literal suffix
501         "[(M)] [UNSIGNED] [ZEROFILL]",               // Create params
502         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
503         sal_False,                                   // case sensitive
504         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
505         sal_True,                                    // unsignable
506         sal_False,                                   // fixed_prec_scale
507         sal_True,                                    // auto_increment
508         "MEDIUMINT",                                 // local type name
509         0,                                           // minimum scale
510         0,                                           // maximum scale
511         0,                                           // sql data type (unsued)
512         0,                                           // sql datetime sub (unsued)
513         10                                           // num prec radix
514      },
515 
516     // ----------- MySQL-Type: SMALLINT SDBC-Type: INTEGER ----------
517     {
518         "SMALLINT",                                  // Typename
519         com::sun::star::sdbc::DataType::SMALLINT,    // sdbc-type
520          5,                                          // Precision
521         "",                                          // Literal prefix
522         "",                                          // Literal suffix
523         "[(M)] [UNSIGNED] [ZEROFILL]",               // Create params
524         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
525         sal_False,                                   // case sensitive
526         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
527         sal_True,                                    // unsignable
528         sal_False,                                   // fixed_prec_scale
529         sal_True,                                    // auto_increment
530         "SMALLINT",                                  // local type name
531         0,                                           // minimum scale
532         0,                                           // maximum scale
533         0,                                           // sql data type (unsued)
534         0,                                           // sql datetime sub (unsued)
535         10                                           // num prec radix
536      },
537 
538     // ----------- MySQL-Type: FLOAT SDBC-Type: REAL ----------
539     {
540         "FLOAT",                                     // Typename
541         com::sun::star::sdbc::DataType::REAL,        // sdbc-type
542         10,                                          // Precision
543         "",                                          // Literal prefix
544         "",                                          // Literal suffix
545         "[(M,D)] [ZEROFILL]",                        // Create params
546         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
547         sal_False,                                   // case sensitive
548         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
549         sal_False,                                   // unsignable
550         sal_False,                                   // fixed_prec_scale
551         sal_True,                                    // auto_increment
552         "FLOAT",                                     // local type name
553         -38,                                         // minimum scale
554         38,                                          // maximum scale
555         0,                                           // sql data type (unsued)
556         0,                                           // sql datetime sub (unsued)
557         10                                           // num prec radix
558      },
559 
560     // ----------- MySQL-Type: DOUBLE SDBC-Type: DOUBLE ----------
561     {
562         "DOUBLE",                                    // Typename
563         com::sun::star::sdbc::DataType::DOUBLE,      // sdbc-type
564         17,                                          // Precision
565         "",                                          // Literal prefix
566         "",                                          // Literal suffix
567         "[(M,D)] [ZEROFILL]",                        // Create params
568         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
569         sal_False,                                   // case sensitive
570         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
571         sal_False,                                   // unsignable
572         sal_False,                                   // fixed_prec_scale
573         sal_True,                                    // auto_increment
574         "DOUBLE",                                    // local type name
575         -308,                                        // minimum scale
576         308,                                         // maximum scale
577         0,                                           // sql data type (unsued)
578         0,                                           // sql datetime sub (unsued)
579         10                                           // num prec radix
580      },
581 
582     // ----------- MySQL-Type: DOUBLE PRECISION SDBC-Type: DOUBLE ----------
583     {
584         "DOUBLE PRECISION",                          // Typename
585         com::sun::star::sdbc::DataType::DOUBLE,      // sdbc-type
586         17,                                          // Precision
587         "",                                          // Literal prefix
588         "",                                          // Literal suffix
589         "[(M,D)] [ZEROFILL]",                        // Create params
590         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
591         sal_False,                                   // case sensitive
592         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
593         sal_False,                                   // unsignable
594         sal_False,                                   // fixed_prec_scale
595         sal_True,                                    // auto_increment
596         "DOUBLE PRECISION",                          // local type name
597         -308,                                        // minimum scale
598         308,                                         // maximum scale
599         0,                                           // sql data type (unsued)
600         0,                                           // sql datetime sub (unsued)
601         10                                           // num prec radix
602      },
603 
604     // ----------- MySQL-Type: REAL SDBC-Type: DOUBLE ----------
605     {
606         "REAL",                                      // Typename
607         com::sun::star::sdbc::DataType::DOUBLE,      // sdbc-type
608         17,                                          // Precision
609         "",                                          // Literal prefix
610         "",                                          // Literal suffix
611         "[(M,D)] [ZEROFILL]",                        // Create params
612         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
613         sal_False,                                   // case sensitive
614         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
615         sal_False,                                   // unsignable
616         sal_False,                                   // fixed_prec_scale
617         sal_True,                                    // auto_increment
618         "REAL",                                      // local type name
619         -308,                                        // minimum scale
620         308,                                         // maximum scale
621         0,                                           // sql data type (unsued)
622         0,                                           // sql datetime sub (unsued)
623         10                                           // num prec radix
624      },
625 
626     // ----------- MySQL-Type: VARCHAR SDBC-Type: VARCHAR ----------
627     {
628         "VARCHAR",                                   // Typename
629         com::sun::star::sdbc::DataType::VARCHAR,     // sdbc-type
630         255,                                         // Precision
631         "'",                                          // Literal prefix
632         "'",                                          // Literal suffix
633         "(M)",                                       // Create params
634         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
635         sal_False,                                   // case sensitive
636         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
637         sal_False,                                   // unsignable
638         sal_False,                                   // fixed_prec_scale
639         sal_False,                                   // auto_increment
640         "VARCHAR",                                   // local type name
641         0,                                           // minimum scale
642         0,                                           // maximum scale
643         0,                                           // sql data type (unsued)
644         0,                                           // sql datetime sub (unsued)
645         10                                           // num prec radix
646      },
647 
648     // ----------- MySQL-Type: ENUM SDBC-Type: VARCHAR ----------
649     {
650         "ENUM",                                      // Typename
651         com::sun::star::sdbc::DataType::VARCHAR,     // sdbc-type
652         0xFFFF,                                      // Precision
653         "'",                                          // Literal prefix
654         "'",                                          // Literal suffix
655         "",                                          // Create params
656         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
657         sal_False,                                   // case sensitive
658         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
659         sal_False,                                   // unsignable
660         sal_False,                                   // fixed_prec_scale
661         sal_False,                                   // auto_increment
662         "ENUM",                                      // local type name
663         0,                                           // minimum scale
664         0,                                           // maximum scale
665         0,                                           // sql data type (unsued)
666         0,                                           // sql datetime sub (unsued)
667         10                                           // num prec radix
668      },
669 
670     // ----------- MySQL-Type: SET SDBC-Type: VARCHAR ----------
671     {
672         "SET",                                       // Typename
673         com::sun::star::sdbc::DataType::VARCHAR,     // sdbc-type
674         64,                                          // Precision
675         "'",                                          // Literal prefix
676         "'",                                          // Literal suffix
677         "",                                          // Create params
678         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
679         sal_False,                                   // case sensitive
680         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
681         sal_False,                                   // unsignable
682         sal_False,                                   // fixed_prec_scale
683         sal_False,                                   // auto_increment
684         "SET",                                       // local type name
685         0,                                           // minimum scale
686         0,                                           // maximum scale
687         0,                                           // sql data type (unsued)
688         0,                                           // sql datetime sub (unsued)
689         10                                           // num prec radix
690      },
691 
692     // ----------- MySQL-Type: DATE SDBC-Type: DATE ----------
693     {
694         "DATE",                                      // Typename
695         com::sun::star::sdbc::DataType::DATE,        // sdbc-type
696         0,                                           // Precision
697         "'",                                          // Literal prefix
698         "'",                                          // Literal suffix
699         "",                                          // Create params
700         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
701         sal_False,                                   // case sensitive
702         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
703         sal_False,                                   // unsignable
704         sal_False,                                   // fixed_prec_scale
705         sal_False,                                   // auto_increment
706         "DATE",                                      // local type name
707         0,                                           // minimum scale
708         0,                                           // maximum scale
709         0,                                           // sql data type (unsued)
710         0,                                           // sql datetime sub (unsued)
711         10                                           // num prec radix
712      },
713 
714     // ----------- MySQL-Type: TIME SDBC-Type: TIME ----------
715     {
716         "TIME",                                      // Typename
717         com::sun::star::sdbc::DataType::TIME,        // sdbc-type
718         0,                                           // Precision
719         "'",                                          // Literal prefix
720         "'",                                          // Literal suffix
721         "",                                          // Create params
722         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
723         sal_False,                                   // case sensitive
724         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
725         sal_False,                                   // unsignable
726         sal_False,                                   // fixed_prec_scale
727         sal_False,                                   // auto_increment
728         "TIME",                                      // local type name
729         0,                                           // minimum scale
730         0,                                           // maximum scale
731         0,                                           // sql data type (unsued)
732         0,                                           // sql datetime sub (unsued)
733         10                                           // num prec radix
734      },
735 
736     // ----------- MySQL-Type: DATETIME SDBC-Type: TIMESTAMP ----------
737     {
738         "DATETIME",                                  // Typename
739         com::sun::star::sdbc::DataType::TIMESTAMP,   // sdbc-type
740         0,                                           // Precision
741         "'",                                          // Literal prefix
742         "'",                                          // Literal suffix
743         "",                                          // Create params
744         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
745         sal_False,                                   // case sensitive
746         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
747         sal_False,                                   // unsignable
748         sal_False,                                   // fixed_prec_scale
749         sal_False,                                   // auto_increment
750         "DATETIME",                                  // local type name
751         0,                                           // minimum scale
752         0,                                           // maximum scale
753         0,                                           // sql data type (unsued)
754         0,                                           // sql datetime sub (unsued)
755         10                                           // num prec radix
756      },
757 
758     // ----------- MySQL-Type: TIMESTAMP SDBC-Type: TIMESTAMP ----------
759     {
760         "TIMESTAMP",                                 // Typename
761         com::sun::star::sdbc::DataType::TIMESTAMP,   // sdbc-type
762         0,                                           // Precision
763         "'",                                         // Literal prefix
764         "'",                                         // Literal suffix
765         "[(M)]",                                     // Create params
766         com::sun::star::sdbc::ColumnValue::NULLABLE, // nullable
767         sal_False,                                   // case sensitive
768         com::sun::star::sdbc::ColumnSearch::FULL,    // searchable
769         sal_False,                                   // unsignable
770         sal_False,                                   // fixed_prec_scale
771         sal_False,                                   // auto_increment
772         "TIMESTAMP",                                 // local type name
773         0,                                           // minimum scale
774         0,                                           // maximum scale
775         0,                                           // sql data type (unsued)
776         0,                                           // sql datetime sub (unsued)
777         10                                           // num prec radix
778     },
779 
780     // ----------- MySQL-Type: TIMESTAMP SDBC-Type: TIMESTAMP ----------
781     {
782         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
783     }
784 };
785