~ubuntu-branches/ubuntu/precise/libdbi-drivers/precise

« back to all changes in this revision

Viewing changes to drivers/sqlite/dbd_sqlite.h

  • Committer: Bazaar Package Importer
  • Author(s): David Parker
  • Date: 2004-02-01 14:33:06 UTC
  • Revision ID: james.westby@ubuntu.com-20040201143306-pmwubrx4d4jrq7om
Tags: upstream-0.7.1
ImportĀ upstreamĀ versionĀ 0.7.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * libdbi - database independent abstraction layer for C.
 
3
 * Copyright (C) 2001, David Parker and Mark Tobenkin.
 
4
 * http://libdbi.sourceforge.net
 
5
 * 
 
6
 * dbd_sqlite.c: SQLite database support (using libsqlite)
 
7
 * Copyright (C) 2002, Markus Hoenicka <mhoenicka@users.sourceforge.net>
 
8
 * http://libdbi.sourceforge.net
 
9
 * 
 
10
 * $Id: dbd_sqlite.h,v 1.2 2003/06/08 16:34:47 mhoenicka Exp $
 
11
 */
 
12
 
 
13
enum enum_field_types { FIELD_TYPE_DECIMAL, FIELD_TYPE_TINY,
 
14
                        FIELD_TYPE_SHORT,  FIELD_TYPE_LONG,
 
15
                        FIELD_TYPE_FLOAT,  FIELD_TYPE_DOUBLE,
 
16
                        FIELD_TYPE_NULL,   FIELD_TYPE_TIMESTAMP,
 
17
                        FIELD_TYPE_LONGLONG,FIELD_TYPE_INT24,
 
18
                        FIELD_TYPE_DATE,   FIELD_TYPE_TIME,
 
19
                        FIELD_TYPE_DATETIME, FIELD_TYPE_YEAR,
 
20
                        FIELD_TYPE_NEWDATE,
 
21
                        FIELD_TYPE_ENUM=247,
 
22
                        FIELD_TYPE_SET=248,
 
23
                        FIELD_TYPE_TINY_BLOB=249,
 
24
                        FIELD_TYPE_MEDIUM_BLOB=250,
 
25
                        FIELD_TYPE_LONG_BLOB=251,
 
26
                        FIELD_TYPE_BLOB=252,
 
27
                        FIELD_TYPE_VAR_STRING=253,
 
28
                        FIELD_TYPE_STRING=254
 
29
};
 
30
 
 
31
/* this is the maximum length of identifiers like table names and
 
32
   column names. SQLite does not seem to have any limit like this, but
 
33
   other systems use limits like 32 (PostgreSQL) and 64 (MySQL) */
 
34
#define MAX_IDENT_LENGTH 128
 
35
 
 
36
#define SQLITE_RESERVED_WORDS { \
 
37
        "ACTION", \
 
38
        "ADD", \
 
39
        "AGGREGATE", \
 
40
        "ALL", \
 
41
        "ALTER", \
 
42
        "AFTER", \
 
43
        "AND", \
 
44
        "AS", \
 
45
        "ASC", \
 
46
        "AVG", \
 
47
        "AVG_ROW_LENGTH", \
 
48
        "AUTO_INCREMENT", \
 
49
        "BETWEEN", \
 
50
        "BIGINT", \
 
51
        "BIT", \
 
52
        "BINARY", \
 
53
        "BLOB", \
 
54
        "BOOL", \
 
55
        "BOTH", \
 
56
        "BY", \
 
57
        "CASCADE", \
 
58
        "CASE", \
 
59
        "CHAR", \
 
60
        "CHARACTER", \
 
61
        "CHANGE", \
 
62
        "CHECK", \
 
63
        "CHECKSUM", \
 
64
        "COLUMN", \
 
65
        "COLUMNS", \
 
66
        "COMMENT", \
 
67
        "CONSTRAINT", \
 
68
        "CREATE", \
 
69
        "CROSS", \
 
70
        "CURRENT_DATE", \
 
71
        "CURRENT_TIME", \
 
72
        "CURRENT_TIMESTAMP", \
 
73
        "DATA", \
 
74
        "DATABASE", \
 
75
        "DATABASES", \
 
76
        "DATE", \
 
77
        "DATETIME", \
 
78
        "DAY", \
 
79
        "DAY_HOUR", \
 
80
        "DAY_MINUTE", \
 
81
        "DAY_SECOND", \
 
82
        "DAYOFMONTH", \
 
83
        "DAYOFWEEK", \
 
84
        "DAYOFYEAR", \
 
85
        "DEC", \
 
86
        "DECIMAL", \
 
87
        "DEFAULT", \
 
88
        "DELAYED", \
 
89
        "DELAY_KEY_WRITE", \
 
90
        "DELETE", \
 
91
        "DESC", \
 
92
        "DESCRIBE", \
 
93
        "DISTINCT", \
 
94
        "DISTINCTROW", \
 
95
        "DOUBLE", \
 
96
        "DROP", \
 
97
        "END", \
 
98
        "ELSE", \
 
99
        "ESCAPE", \
 
100
        "ESCAPED", \
 
101
        "ENCLOSED", \
 
102
        "ENUM", \
 
103
        "EXPLAIN", \
 
104
        "EXISTS", \
 
105
        "FIELDS", \
 
106
        "FILE", \
 
107
        "FIRST", \
 
108
        "FLOAT", \
 
109
        "FLOAT4", \
 
110
        "FLOAT8", \
 
111
        "FLUSH", \
 
112
        "FOREIGN", \
 
113
        "FROM", \
 
114
        "FOR", \
 
115
        "FULL", \
 
116
        "FUNCTION", \
 
117
        "GLOBAL", \
 
118
        "GRANT", \
 
119
        "GRANTS", \
 
120
        "GROUP", \
 
121
        "HAVING", \
 
122
        "HEAP", \
 
123
        "HIGH_PRIORITY", \
 
124
        "HOUR", \
 
125
        "HOUR_MINUTE", \
 
126
        "HOUR_SECOND", \
 
127
        "HOSTS", \
 
128
        "IDENTIFIED", \
 
129
        "IGNORE", \
 
130
        "IN", \
 
131
        "INDEX", \
 
132
        "INFILE", \
 
133
        "INNER", \
 
134
        "INSERT", \
 
135
        "INSERT_ID", \
 
136
        "INT", \
 
137
        "INTEGER", \
 
138
        "INTERVAL", \
 
139
        "INT1", \
 
140
        "INT2", \
 
141
        "INT3", \
 
142
        "INT4", \
 
143
        "INT8", \
 
144
        "INTO", \
 
145
        "IF", \
 
146
        "IS", \
 
147
        "ISAM", \
 
148
        "JOIN", \
 
149
        "KEY", \
 
150
        "KEYS", \
 
151
        "KILL", \
 
152
        "LAST_INSERT_ID", \
 
153
        "LEADING", \
 
154
        "LEFT", \
 
155
        "LENGTH", \
 
156
        "LIKE", \
 
157
        "LINES", \
 
158
        "LIMIT", \
 
159
        "LOAD", \
 
160
        "LOCAL", \
 
161
        "LOCK", \
 
162
        "LOGS", \
 
163
        "LONG", \
 
164
        "LONGBLOB", \
 
165
        "LONGTEXT", \
 
166
        "LOW_PRIORITY", \
 
167
        "MAX", \
 
168
        "MAX_ROWS", \
 
169
        "MATCH", \
 
170
        "MEDIUMBLOB", \
 
171
        "MEDIUMTEXT", \
 
172
        "MEDIUMINT", \
 
173
        "MIDDLEINT", \
 
174
        "MIN_ROWS", \
 
175
        "MINUTE", \
 
176
        "MINUTE_SECOND", \
 
177
        "MODIFY", \
 
178
        "MONTH", \
 
179
        "MONTHNAME", \
 
180
        "MYISAM", \
 
181
        "NATURAL", \
 
182
        "NUMERIC", \
 
183
        "NO", \
 
184
        "NOT", \
 
185
        "NULL", \
 
186
        "ON", \
 
187
        "OPTIMIZE", \
 
188
        "OPTION", \
 
189
        "OPTIONALLY", \
 
190
        "OR", \
 
191
        "ORDER", \
 
192
        "OUTER", \
 
193
        "OUTFILE", \
 
194
        "PACK_KEYS", \
 
195
        "PARTIAL", \
 
196
        "PASSWORD", \
 
197
        "PRECISION", \
 
198
        "PRIMARY", \
 
199
        "PROCEDURE", \
 
200
        "PROCESS", \
 
201
        "PROCESSLIST", \
 
202
        "PRIVILEGES", \
 
203
        "READ", \
 
204
        "REAL", \
 
205
        "REFERENCES", \
 
206
        "RELOAD", \
 
207
        "REGEXP", \
 
208
        "RENAME", \
 
209
        "REPLACE", \
 
210
        "RESTRICT", \
 
211
        "RETURNS", \
 
212
        "REVOKE", \
 
213
        "RLIKE", \
 
214
        "ROW", \
 
215
        "ROWS", \
 
216
        "SECOND", \
 
217
        "SELECT", \
 
218
        "SET", \
 
219
        "SHOW", \
 
220
        "SHUTDOWN", \
 
221
        "SMALLINT", \
 
222
        "SONAME", \
 
223
        "SQL_BIG_TABLES", \
 
224
        "SQL_BIG_SELECTS", \
 
225
        "SQL_LOW_PRIORITY_UPDATES", \
 
226
        "SQL_LOG_OFF", \
 
227
        "SQL_LOG_UPDATE", \
 
228
        "SQL_SELECT_LIMIT", \
 
229
        "SQL_SMALL_RESULT", \
 
230
        "SQL_BIG_RESULT", \
 
231
        "SQL_WARNINGS", \
 
232
        "STRAIGHT_JOIN", \
 
233
        "STARTING", \
 
234
        "STATUS", \
 
235
        "STRING", \
 
236
        "TABLE", \
 
237
        "TABLES", \
 
238
        "TEMPORARY", \
 
239
        "TERMINATED", \
 
240
        "TEXT", \
 
241
        "THEN", \
 
242
        "TIME", \
 
243
        "TIMESTAMP", \
 
244
        "TINYBLOB", \
 
245
        "TINYTEXT", \
 
246
        "TINYINT", \
 
247
        "TRAILING", \
 
248
        "TO", \
 
249
        "TYPE", \
 
250
        "USE", \
 
251
        "USING", \
 
252
        "UNIQUE", \
 
253
        "UNLOCK", \
 
254
        "UNSIGNED", \
 
255
        "UPDATE", \
 
256
        "USAGE", \
 
257
        "VALUES", \
 
258
        "VARCHAR", \
 
259
        "VARIABLES", \
 
260
        "VARYING", \
 
261
        "VARBINARY", \
 
262
        "WITH", \
 
263
        "WRITE", \
 
264
        "WHEN", \
 
265
        "WHERE", \
 
266
        "YEAR", \
 
267
        "YEAR_MONTH", \
 
268
        "ZEROFILL", \
 
269
        NULL }