1pub const SQL_KEYWORDS: &[&str] = &[
17 "ABORT",
18 "ADD",
19 "ALL",
20 "ALTER",
21 "ANALYZE",
22 "ANY",
23 "AS",
24 "ASC",
25 "ATTACH",
26 "AUTOINCREMENT",
27 "BEGIN",
28 "BETWEEN",
29 "BY",
30 "CASCADE",
31 "CASE",
32 "CAST",
33 "CHECK",
34 "COLLATE",
35 "COLUMN",
36 "COMMIT",
37 "CONFLICT",
38 "CONSTRAINT",
39 "CREATE",
40 "CROSS",
41 "DEFAULT",
42 "DEFERRED",
43 "DELETE",
44 "DESC",
45 "DETACH",
46 "DISTINCT",
47 "DROP",
48 "ELSE",
49 "END",
50 "ESCAPE",
51 "EXCEPT",
52 "EXCLUSIVE",
53 "EXISTS",
54 "EXPLAIN",
55 "FAIL",
56 "FOREIGN",
57 "FROM",
58 "GLOB",
59 "GROUP",
60 "HAVING",
61 "IF",
62 "IGNORE",
63 "IMMEDIATE",
64 "IN",
65 "INDEX",
66 "INNER",
67 "INSERT",
68 "INTERSECT",
69 "INTO",
70 "IS",
71 "ISNULL",
72 "JOIN",
73 "KEY",
74 "LEFT",
75 "LIKE",
76 "LIMIT",
77 "MATCH",
78 "NATURAL",
79 "NOCASE",
80 "NOTNULL",
81 "NULL",
82 "OFFSET",
83 "ON",
84 "ORDER",
85 "OUTER",
86 "PLAN",
87 "PRAGMA",
88 "PRIMARY",
89 "QUERY",
90 "RECURSIVE",
91 "REFERENCES",
92 "REGEXP",
93 "REINDEX",
94 "RENAME",
95 "REPLACE",
96 "RESTRICT",
97 "RIGHT",
98 "ROLLBACK",
99 "ROWID",
100 "SELECT",
101 "SET",
102 "TABLE",
103 "TEMP",
104 "TEMPORARY",
105 "THEN",
106 "TRANSACTION",
107 "TRIGGER",
108 "UNION",
109 "UNIQUE",
110 "UPDATE",
111 "USING",
112 "VACUUM",
113 "VALUES",
114 "VIEW",
115 "VIRTUAL",
116 "WHEN",
117 "WHERE",
118 "WITH",
119 "WITHOUT",
120];
121
122pub const SQL_WORD_OPERATORS: &[&str] = &["AND", "NOT", "OR"];
124
125pub const SQL_TYPES: &[&str] = &[
127 "BIGINT",
128 "BLOB",
129 "BOOLEAN",
130 "CHAR",
131 "DATE",
132 "DATETIME",
133 "DECIMAL",
134 "DOUBLE",
135 "FLOAT",
136 "INT",
137 "INTEGER",
138 "NUMERIC",
139 "REAL",
140 "SMALLINT",
141 "TEXT",
142 "TIMESTAMP",
143 "TINYINT",
144 "VARCHAR",
145];
146
147pub const SQL_FUNCTIONS: &[&str] = &[
152 "ABS",
153 "AVG",
154 "BIN_RECORD_JSON_OBJECT",
155 "CAST",
156 "CHANGES",
157 "COALESCE",
158 "COUNT",
159 "DATE",
160 "DATETIME",
161 "FORMAT",
162 "FTS_HIGHLIGHT",
163 "FTS_MATCH",
164 "FTS_SCORE",
165 "GENERATE_SERIES",
166 "GROUP_CONCAT",
167 "HEX",
168 "IFNULL",
169 "IIF",
170 "INSTR",
171 "JSON",
172 "JSON_ARRAY",
173 "JSON_EACH",
174 "JSON_EXTRACT",
175 "JSON_GROUP_ARRAY",
176 "JSON_GROUP_OBJECT",
177 "JSON_INSERT",
178 "JSON_OBJECT",
179 "JSON_PATCH",
180 "JSON_REMOVE",
181 "JSON_REPLACE",
182 "JSON_SET",
183 "JSON_TREE",
184 "JSON_TYPE",
185 "JSON_VALID",
186 "JULIANDAY",
187 "LAST_INSERT_ROWID",
188 "LENGTH",
189 "LIBSQL_VECTOR_IDX",
190 "LIKELIHOOD",
191 "LIKELY",
192 "LOWER",
193 "LTRIM",
194 "MAX",
195 "MEDIAN",
196 "MIN",
197 "NULLIF",
198 "PERCENTILE",
199 "PERCENTILE_CONT",
200 "PERCENTILE_DISC",
201 "PRINTF",
202 "QUOTE",
203 "RANDOM",
204 "RANDOMBLOB",
205 "REGEXP_CAPTURE",
206 "REGEXP_REPLACE",
207 "REGEXP_SUBSTR",
208 "REPLACE",
209 "ROUND",
210 "RTRIM",
211 "STDDEV",
212 "STRFTIME",
213 "SUBSTR",
214 "SUBSTRING",
215 "SUM",
216 "TABLE_COLUMNS_JSON_ARRAY",
217 "TIME",
218 "TIMEDIFF",
219 "TIME_ADD",
220 "TIME_DATE",
221 "TIME_FMT_DATETIME",
222 "TIME_FMT_ISO",
223 "TIME_FMT_UNIXEPOCH",
224 "TIME_NOW",
225 "TIME_SUB",
226 "TIME_UNIX",
227 "TOTAL",
228 "TOTAL_CHANGES",
229 "TRIM",
230 "TYPEOF",
231 "UNICODE",
232 "UNIXEPOCH",
233 "UNLIKELY",
234 "UPPER",
235 "UUID4",
236 "UUID7",
237 "UUID7_TIMESTAMP_MS",
238 "UUID_BLOB",
239 "UUID_STR",
240 "VECTOR32",
241 "VECTOR64",
242 "VECTOR_CONCAT",
243 "VECTOR_DIMENSION",
244 "VECTOR_DISTANCE_COS",
245 "VECTOR_DISTANCE_L2",
246 "VECTOR_EXTRACT",
247 "VECTOR_SLICE",
248 "VECTOR_TOP_K",
249 "ZEROBLOB",
250];
251
252pub const BASE_TYPES: &[&str] = &["ANY", "BLOB", "INTEGER", "REAL", "TEXT"];
254
255pub const TABLE_CONTEXT_KEYWORDS: &[&str] = &["FROM", "INTO", "JOIN", "TABLE", "UPDATE"];
259
260pub const JOIN_QUALIFIER_KEYWORDS: &[&str] =
262 &["CROSS", "INNER", "LEFT", "NATURAL", "OUTER", "RIGHT"];
263
264pub const COLUMN_CONTEXT_KEYWORDS: &[&str] = &[
266 "AND", "BY", "GROUP", "HAVING", "ON", "OR", "ORDER", "SELECT", "SET", "WHERE",
267];
268
269pub const STATEMENT_KEYWORDS: &[&str] = &[
271 "ALTER", "ANALYZE", "ATTACH", "BEGIN", "COMMIT", "CREATE", "DELETE", "DETACH", "DROP",
272 "EXPLAIN", "INSERT", "PRAGMA", "REINDEX", "ROLLBACK", "SELECT", "UPDATE", "VACUUM", "WITH",
273];
274
275pub const CLAUSE_KEYWORDS: &[&str] = &[
277 "ALL",
278 "AND",
279 "AS",
280 "ASC",
281 "BETWEEN",
282 "BY",
283 "CASE",
284 "CROSS",
285 "DEFAULT",
286 "DESC",
287 "DISTINCT",
288 "ELSE",
289 "END",
290 "EXCEPT",
291 "EXISTS",
292 "FROM",
293 "GROUP",
294 "HAVING",
295 "IN",
296 "INNER",
297 "INTERSECT",
298 "INTO",
299 "IS",
300 "JOIN",
301 "LEFT",
302 "LIKE",
303 "LIMIT",
304 "NOT",
305 "NULL",
306 "OFFSET",
307 "ON",
308 "OR",
309 "ORDER",
310 "OUTER",
311 "RIGHT",
312 "SELECT",
313 "SET",
314 "THEN",
315 "UNION",
316 "VALUES",
317 "WHEN",
318 "WHERE",
319];
320
321pub const FILTER_KEYWORDS: &[&str] = &[
326 "AND",
327 "AS",
328 "BETWEEN",
329 "CASE",
330 "DEFAULT",
331 "ELSE",
332 "END",
333 "EXCEPT",
334 "EXISTS",
335 "GROUP",
336 "HAVING",
337 "IN",
338 "INTERSECT",
339 "IS",
340 "LIKE",
341 "LIMIT",
342 "NOT",
343 "NULL",
344 "OFFSET",
345 "ON",
346 "OR",
347 "ORDER",
348 "SET",
349 "THEN",
350 "UNION",
351 "VALUES",
352 "WHEN",
353 "WHERE",
354];