Snapshot of upstream SQLite 3.32.2
[sqlcipher.git] / src / pragma.h
blob0d7cae0e1dd240d55e4283e1ea02eb9f5d22f678
1 /* DO NOT EDIT!
2 ** This file is automatically generated by the script at
3 ** ../tool/mkpragmatab.tcl. To update the set of pragmas, edit
4 ** that script and rerun it.
5 */
7 /* The various pragma types */
8 #define PragTyp_ACTIVATE_EXTENSIONS 0
9 #define PragTyp_ANALYSIS_LIMIT 1
10 #define PragTyp_HEADER_VALUE 2
11 #define PragTyp_AUTO_VACUUM 3
12 #define PragTyp_FLAG 4
13 #define PragTyp_BUSY_TIMEOUT 5
14 #define PragTyp_CACHE_SIZE 6
15 #define PragTyp_CACHE_SPILL 7
16 #define PragTyp_CASE_SENSITIVE_LIKE 8
17 #define PragTyp_COLLATION_LIST 9
18 #define PragTyp_COMPILE_OPTIONS 10
19 #define PragTyp_DATA_STORE_DIRECTORY 11
20 #define PragTyp_DATABASE_LIST 12
21 #define PragTyp_DEFAULT_CACHE_SIZE 13
22 #define PragTyp_ENCODING 14
23 #define PragTyp_FOREIGN_KEY_CHECK 15
24 #define PragTyp_FOREIGN_KEY_LIST 16
25 #define PragTyp_FUNCTION_LIST 17
26 #define PragTyp_HARD_HEAP_LIMIT 18
27 #define PragTyp_INCREMENTAL_VACUUM 19
28 #define PragTyp_INDEX_INFO 20
29 #define PragTyp_INDEX_LIST 21
30 #define PragTyp_INTEGRITY_CHECK 22
31 #define PragTyp_JOURNAL_MODE 23
32 #define PragTyp_JOURNAL_SIZE_LIMIT 24
33 #define PragTyp_LOCK_PROXY_FILE 25
34 #define PragTyp_LOCKING_MODE 26
35 #define PragTyp_PAGE_COUNT 27
36 #define PragTyp_MMAP_SIZE 28
37 #define PragTyp_MODULE_LIST 29
38 #define PragTyp_OPTIMIZE 30
39 #define PragTyp_PAGE_SIZE 31
40 #define PragTyp_PRAGMA_LIST 32
41 #define PragTyp_SECURE_DELETE 33
42 #define PragTyp_SHRINK_MEMORY 34
43 #define PragTyp_SOFT_HEAP_LIMIT 35
44 #define PragTyp_SYNCHRONOUS 36
45 #define PragTyp_TABLE_INFO 37
46 #define PragTyp_TEMP_STORE 38
47 #define PragTyp_TEMP_STORE_DIRECTORY 39
48 #define PragTyp_THREADS 40
49 #define PragTyp_WAL_AUTOCHECKPOINT 41
50 #define PragTyp_WAL_CHECKPOINT 42
51 #define PragTyp_LOCK_STATUS 43
52 #define PragTyp_STATS 44
54 /* Property flags associated with various pragma. */
55 #define PragFlg_NeedSchema 0x01 /* Force schema load before running */
56 #define PragFlg_NoColumns 0x02 /* OP_ResultRow called with zero columns */
57 #define PragFlg_NoColumns1 0x04 /* zero columns if RHS argument is present */
58 #define PragFlg_ReadOnly 0x08 /* Read-only HEADER_VALUE */
59 #define PragFlg_Result0 0x10 /* Acts as query when no argument */
60 #define PragFlg_Result1 0x20 /* Acts as query when has one argument */
61 #define PragFlg_SchemaOpt 0x40 /* Schema restricts name search if present */
62 #define PragFlg_SchemaReq 0x80 /* Schema required - "main" is default */
64 /* Names of columns for pragmas that return multi-column result
65 ** or that return single-column results where the name of the
66 ** result column is different from the name of the pragma
68 static const char *const pragCName[] = {
69 /* 0 */ "id", /* Used by: foreign_key_list */
70 /* 1 */ "seq",
71 /* 2 */ "table",
72 /* 3 */ "from",
73 /* 4 */ "to",
74 /* 5 */ "on_update",
75 /* 6 */ "on_delete",
76 /* 7 */ "match",
77 /* 8 */ "cid", /* Used by: table_xinfo */
78 /* 9 */ "name",
79 /* 10 */ "type",
80 /* 11 */ "notnull",
81 /* 12 */ "dflt_value",
82 /* 13 */ "pk",
83 /* 14 */ "hidden",
84 /* table_info reuses 8 */
85 /* 15 */ "seqno", /* Used by: index_xinfo */
86 /* 16 */ "cid",
87 /* 17 */ "name",
88 /* 18 */ "desc",
89 /* 19 */ "coll",
90 /* 20 */ "key",
91 /* 21 */ "name", /* Used by: function_list */
92 /* 22 */ "builtin",
93 /* 23 */ "type",
94 /* 24 */ "enc",
95 /* 25 */ "narg",
96 /* 26 */ "flags",
97 /* 27 */ "tbl", /* Used by: stats */
98 /* 28 */ "idx",
99 /* 29 */ "wdth",
100 /* 30 */ "hght",
101 /* 31 */ "flgs",
102 /* 32 */ "seq", /* Used by: index_list */
103 /* 33 */ "name",
104 /* 34 */ "unique",
105 /* 35 */ "origin",
106 /* 36 */ "partial",
107 /* 37 */ "table", /* Used by: foreign_key_check */
108 /* 38 */ "rowid",
109 /* 39 */ "parent",
110 /* 40 */ "fkid",
111 /* index_info reuses 15 */
112 /* 41 */ "seq", /* Used by: database_list */
113 /* 42 */ "name",
114 /* 43 */ "file",
115 /* 44 */ "busy", /* Used by: wal_checkpoint */
116 /* 45 */ "log",
117 /* 46 */ "checkpointed",
118 /* collation_list reuses 32 */
119 /* 47 */ "database", /* Used by: lock_status */
120 /* 48 */ "status",
121 /* 49 */ "cache_size", /* Used by: default_cache_size */
122 /* module_list pragma_list reuses 9 */
123 /* 50 */ "timeout", /* Used by: busy_timeout */
126 /* Definitions of all built-in pragmas */
127 typedef struct PragmaName {
128 const char *const zName; /* Name of pragma */
129 u8 ePragTyp; /* PragTyp_XXX value */
130 u8 mPragFlg; /* Zero or more PragFlg_XXX values */
131 u8 iPragCName; /* Start of column names in pragCName[] */
132 u8 nPragCName; /* Num of col names. 0 means use pragma name */
133 u64 iArg; /* Extra argument */
134 } PragmaName;
135 static const PragmaName aPragmaName[] = {
136 #if defined(SQLITE_ENABLE_CEROD)
137 {/* zName: */ "activate_extensions",
138 /* ePragTyp: */ PragTyp_ACTIVATE_EXTENSIONS,
139 /* ePragFlg: */ 0,
140 /* ColNames: */ 0, 0,
141 /* iArg: */ 0 },
142 #endif
143 {/* zName: */ "analysis_limit",
144 /* ePragTyp: */ PragTyp_ANALYSIS_LIMIT,
145 /* ePragFlg: */ PragFlg_Result0,
146 /* ColNames: */ 0, 0,
147 /* iArg: */ 0 },
148 #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
149 {/* zName: */ "application_id",
150 /* ePragTyp: */ PragTyp_HEADER_VALUE,
151 /* ePragFlg: */ PragFlg_NoColumns1|PragFlg_Result0,
152 /* ColNames: */ 0, 0,
153 /* iArg: */ BTREE_APPLICATION_ID },
154 #endif
155 #if !defined(SQLITE_OMIT_AUTOVACUUM)
156 {/* zName: */ "auto_vacuum",
157 /* ePragTyp: */ PragTyp_AUTO_VACUUM,
158 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
159 /* ColNames: */ 0, 0,
160 /* iArg: */ 0 },
161 #endif
162 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
163 #if !defined(SQLITE_OMIT_AUTOMATIC_INDEX)
164 {/* zName: */ "automatic_index",
165 /* ePragTyp: */ PragTyp_FLAG,
166 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
167 /* ColNames: */ 0, 0,
168 /* iArg: */ SQLITE_AutoIndex },
169 #endif
170 #endif
171 {/* zName: */ "busy_timeout",
172 /* ePragTyp: */ PragTyp_BUSY_TIMEOUT,
173 /* ePragFlg: */ PragFlg_Result0,
174 /* ColNames: */ 50, 1,
175 /* iArg: */ 0 },
176 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
177 {/* zName: */ "cache_size",
178 /* ePragTyp: */ PragTyp_CACHE_SIZE,
179 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
180 /* ColNames: */ 0, 0,
181 /* iArg: */ 0 },
182 #endif
183 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
184 {/* zName: */ "cache_spill",
185 /* ePragTyp: */ PragTyp_CACHE_SPILL,
186 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
187 /* ColNames: */ 0, 0,
188 /* iArg: */ 0 },
189 #endif
190 #if !defined(SQLITE_OMIT_CASE_SENSITIVE_LIKE_PRAGMA)
191 {/* zName: */ "case_sensitive_like",
192 /* ePragTyp: */ PragTyp_CASE_SENSITIVE_LIKE,
193 /* ePragFlg: */ PragFlg_NoColumns,
194 /* ColNames: */ 0, 0,
195 /* iArg: */ 0 },
196 #endif
197 {/* zName: */ "cell_size_check",
198 /* ePragTyp: */ PragTyp_FLAG,
199 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
200 /* ColNames: */ 0, 0,
201 /* iArg: */ SQLITE_CellSizeCk },
202 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
203 {/* zName: */ "checkpoint_fullfsync",
204 /* ePragTyp: */ PragTyp_FLAG,
205 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
206 /* ColNames: */ 0, 0,
207 /* iArg: */ SQLITE_CkptFullFSync },
208 #endif
209 #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
210 {/* zName: */ "collation_list",
211 /* ePragTyp: */ PragTyp_COLLATION_LIST,
212 /* ePragFlg: */ PragFlg_Result0,
213 /* ColNames: */ 32, 2,
214 /* iArg: */ 0 },
215 #endif
216 #if !defined(SQLITE_OMIT_COMPILEOPTION_DIAGS)
217 {/* zName: */ "compile_options",
218 /* ePragTyp: */ PragTyp_COMPILE_OPTIONS,
219 /* ePragFlg: */ PragFlg_Result0,
220 /* ColNames: */ 0, 0,
221 /* iArg: */ 0 },
222 #endif
223 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
224 {/* zName: */ "count_changes",
225 /* ePragTyp: */ PragTyp_FLAG,
226 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
227 /* ColNames: */ 0, 0,
228 /* iArg: */ SQLITE_CountRows },
229 #endif
230 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && SQLITE_OS_WIN
231 {/* zName: */ "data_store_directory",
232 /* ePragTyp: */ PragTyp_DATA_STORE_DIRECTORY,
233 /* ePragFlg: */ PragFlg_NoColumns1,
234 /* ColNames: */ 0, 0,
235 /* iArg: */ 0 },
236 #endif
237 #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
238 {/* zName: */ "data_version",
239 /* ePragTyp: */ PragTyp_HEADER_VALUE,
240 /* ePragFlg: */ PragFlg_ReadOnly|PragFlg_Result0,
241 /* ColNames: */ 0, 0,
242 /* iArg: */ BTREE_DATA_VERSION },
243 #endif
244 #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
245 {/* zName: */ "database_list",
246 /* ePragTyp: */ PragTyp_DATABASE_LIST,
247 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0,
248 /* ColNames: */ 41, 3,
249 /* iArg: */ 0 },
250 #endif
251 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && !defined(SQLITE_OMIT_DEPRECATED)
252 {/* zName: */ "default_cache_size",
253 /* ePragTyp: */ PragTyp_DEFAULT_CACHE_SIZE,
254 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
255 /* ColNames: */ 49, 1,
256 /* iArg: */ 0 },
257 #endif
258 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
259 #if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
260 {/* zName: */ "defer_foreign_keys",
261 /* ePragTyp: */ PragTyp_FLAG,
262 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
263 /* ColNames: */ 0, 0,
264 /* iArg: */ SQLITE_DeferFKs },
265 #endif
266 #endif
267 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
268 {/* zName: */ "empty_result_callbacks",
269 /* ePragTyp: */ PragTyp_FLAG,
270 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
271 /* ColNames: */ 0, 0,
272 /* iArg: */ SQLITE_NullCallback },
273 #endif
274 #if !defined(SQLITE_OMIT_UTF16)
275 {/* zName: */ "encoding",
276 /* ePragTyp: */ PragTyp_ENCODING,
277 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
278 /* ColNames: */ 0, 0,
279 /* iArg: */ 0 },
280 #endif
281 #if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
282 {/* zName: */ "foreign_key_check",
283 /* ePragTyp: */ PragTyp_FOREIGN_KEY_CHECK,
284 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0,
285 /* ColNames: */ 37, 4,
286 /* iArg: */ 0 },
287 #endif
288 #if !defined(SQLITE_OMIT_FOREIGN_KEY)
289 {/* zName: */ "foreign_key_list",
290 /* ePragTyp: */ PragTyp_FOREIGN_KEY_LIST,
291 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
292 /* ColNames: */ 0, 8,
293 /* iArg: */ 0 },
294 #endif
295 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
296 #if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
297 {/* zName: */ "foreign_keys",
298 /* ePragTyp: */ PragTyp_FLAG,
299 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
300 /* ColNames: */ 0, 0,
301 /* iArg: */ SQLITE_ForeignKeys },
302 #endif
303 #endif
304 #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
305 {/* zName: */ "freelist_count",
306 /* ePragTyp: */ PragTyp_HEADER_VALUE,
307 /* ePragFlg: */ PragFlg_ReadOnly|PragFlg_Result0,
308 /* ColNames: */ 0, 0,
309 /* iArg: */ BTREE_FREE_PAGE_COUNT },
310 #endif
311 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
312 {/* zName: */ "full_column_names",
313 /* ePragTyp: */ PragTyp_FLAG,
314 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
315 /* ColNames: */ 0, 0,
316 /* iArg: */ SQLITE_FullColNames },
317 {/* zName: */ "fullfsync",
318 /* ePragTyp: */ PragTyp_FLAG,
319 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
320 /* ColNames: */ 0, 0,
321 /* iArg: */ SQLITE_FullFSync },
322 #endif
323 #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
324 #if !defined(SQLITE_OMIT_INTROSPECTION_PRAGMAS)
325 {/* zName: */ "function_list",
326 /* ePragTyp: */ PragTyp_FUNCTION_LIST,
327 /* ePragFlg: */ PragFlg_Result0,
328 /* ColNames: */ 21, 6,
329 /* iArg: */ 0 },
330 #endif
331 #endif
332 {/* zName: */ "hard_heap_limit",
333 /* ePragTyp: */ PragTyp_HARD_HEAP_LIMIT,
334 /* ePragFlg: */ PragFlg_Result0,
335 /* ColNames: */ 0, 0,
336 /* iArg: */ 0 },
337 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
338 #if !defined(SQLITE_OMIT_CHECK)
339 {/* zName: */ "ignore_check_constraints",
340 /* ePragTyp: */ PragTyp_FLAG,
341 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
342 /* ColNames: */ 0, 0,
343 /* iArg: */ SQLITE_IgnoreChecks },
344 #endif
345 #endif
346 #if !defined(SQLITE_OMIT_AUTOVACUUM)
347 {/* zName: */ "incremental_vacuum",
348 /* ePragTyp: */ PragTyp_INCREMENTAL_VACUUM,
349 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_NoColumns,
350 /* ColNames: */ 0, 0,
351 /* iArg: */ 0 },
352 #endif
353 #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
354 {/* zName: */ "index_info",
355 /* ePragTyp: */ PragTyp_INDEX_INFO,
356 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
357 /* ColNames: */ 15, 3,
358 /* iArg: */ 0 },
359 {/* zName: */ "index_list",
360 /* ePragTyp: */ PragTyp_INDEX_LIST,
361 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
362 /* ColNames: */ 32, 5,
363 /* iArg: */ 0 },
364 {/* zName: */ "index_xinfo",
365 /* ePragTyp: */ PragTyp_INDEX_INFO,
366 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
367 /* ColNames: */ 15, 6,
368 /* iArg: */ 1 },
369 #endif
370 #if !defined(SQLITE_OMIT_INTEGRITY_CHECK)
371 {/* zName: */ "integrity_check",
372 /* ePragTyp: */ PragTyp_INTEGRITY_CHECK,
373 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_Result1,
374 /* ColNames: */ 0, 0,
375 /* iArg: */ 0 },
376 #endif
377 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
378 {/* zName: */ "journal_mode",
379 /* ePragTyp: */ PragTyp_JOURNAL_MODE,
380 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
381 /* ColNames: */ 0, 0,
382 /* iArg: */ 0 },
383 {/* zName: */ "journal_size_limit",
384 /* ePragTyp: */ PragTyp_JOURNAL_SIZE_LIMIT,
385 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq,
386 /* ColNames: */ 0, 0,
387 /* iArg: */ 0 },
388 #endif
389 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
390 {/* zName: */ "legacy_alter_table",
391 /* ePragTyp: */ PragTyp_FLAG,
392 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
393 /* ColNames: */ 0, 0,
394 /* iArg: */ SQLITE_LegacyAlter },
395 #endif
396 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && SQLITE_ENABLE_LOCKING_STYLE
397 {/* zName: */ "lock_proxy_file",
398 /* ePragTyp: */ PragTyp_LOCK_PROXY_FILE,
399 /* ePragFlg: */ PragFlg_NoColumns1,
400 /* ColNames: */ 0, 0,
401 /* iArg: */ 0 },
402 #endif
403 #if defined(SQLITE_DEBUG) || defined(SQLITE_TEST)
404 {/* zName: */ "lock_status",
405 /* ePragTyp: */ PragTyp_LOCK_STATUS,
406 /* ePragFlg: */ PragFlg_Result0,
407 /* ColNames: */ 47, 2,
408 /* iArg: */ 0 },
409 #endif
410 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
411 {/* zName: */ "locking_mode",
412 /* ePragTyp: */ PragTyp_LOCKING_MODE,
413 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq,
414 /* ColNames: */ 0, 0,
415 /* iArg: */ 0 },
416 {/* zName: */ "max_page_count",
417 /* ePragTyp: */ PragTyp_PAGE_COUNT,
418 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
419 /* ColNames: */ 0, 0,
420 /* iArg: */ 0 },
421 {/* zName: */ "mmap_size",
422 /* ePragTyp: */ PragTyp_MMAP_SIZE,
423 /* ePragFlg: */ 0,
424 /* ColNames: */ 0, 0,
425 /* iArg: */ 0 },
426 #endif
427 #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
428 #if !defined(SQLITE_OMIT_VIRTUALTABLE)
429 #if !defined(SQLITE_OMIT_INTROSPECTION_PRAGMAS)
430 {/* zName: */ "module_list",
431 /* ePragTyp: */ PragTyp_MODULE_LIST,
432 /* ePragFlg: */ PragFlg_Result0,
433 /* ColNames: */ 9, 1,
434 /* iArg: */ 0 },
435 #endif
436 #endif
437 #endif
438 {/* zName: */ "optimize",
439 /* ePragTyp: */ PragTyp_OPTIMIZE,
440 /* ePragFlg: */ PragFlg_Result1|PragFlg_NeedSchema,
441 /* ColNames: */ 0, 0,
442 /* iArg: */ 0 },
443 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
444 {/* zName: */ "page_count",
445 /* ePragTyp: */ PragTyp_PAGE_COUNT,
446 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
447 /* ColNames: */ 0, 0,
448 /* iArg: */ 0 },
449 {/* zName: */ "page_size",
450 /* ePragTyp: */ PragTyp_PAGE_SIZE,
451 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
452 /* ColNames: */ 0, 0,
453 /* iArg: */ 0 },
454 #endif
455 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
456 #if defined(SQLITE_DEBUG)
457 {/* zName: */ "parser_trace",
458 /* ePragTyp: */ PragTyp_FLAG,
459 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
460 /* ColNames: */ 0, 0,
461 /* iArg: */ SQLITE_ParserTrace },
462 #endif
463 #endif
464 #if !defined(SQLITE_OMIT_INTROSPECTION_PRAGMAS)
465 {/* zName: */ "pragma_list",
466 /* ePragTyp: */ PragTyp_PRAGMA_LIST,
467 /* ePragFlg: */ PragFlg_Result0,
468 /* ColNames: */ 9, 1,
469 /* iArg: */ 0 },
470 #endif
471 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
472 {/* zName: */ "query_only",
473 /* ePragTyp: */ PragTyp_FLAG,
474 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
475 /* ColNames: */ 0, 0,
476 /* iArg: */ SQLITE_QueryOnly },
477 #endif
478 #if !defined(SQLITE_OMIT_INTEGRITY_CHECK)
479 {/* zName: */ "quick_check",
480 /* ePragTyp: */ PragTyp_INTEGRITY_CHECK,
481 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_Result1,
482 /* ColNames: */ 0, 0,
483 /* iArg: */ 0 },
484 #endif
485 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
486 {/* zName: */ "read_uncommitted",
487 /* ePragTyp: */ PragTyp_FLAG,
488 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
489 /* ColNames: */ 0, 0,
490 /* iArg: */ SQLITE_ReadUncommit },
491 {/* zName: */ "recursive_triggers",
492 /* ePragTyp: */ PragTyp_FLAG,
493 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
494 /* ColNames: */ 0, 0,
495 /* iArg: */ SQLITE_RecTriggers },
496 {/* zName: */ "reverse_unordered_selects",
497 /* ePragTyp: */ PragTyp_FLAG,
498 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
499 /* ColNames: */ 0, 0,
500 /* iArg: */ SQLITE_ReverseOrder },
501 #endif
502 #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
503 {/* zName: */ "schema_version",
504 /* ePragTyp: */ PragTyp_HEADER_VALUE,
505 /* ePragFlg: */ PragFlg_NoColumns1|PragFlg_Result0,
506 /* ColNames: */ 0, 0,
507 /* iArg: */ BTREE_SCHEMA_VERSION },
508 #endif
509 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
510 {/* zName: */ "secure_delete",
511 /* ePragTyp: */ PragTyp_SECURE_DELETE,
512 /* ePragFlg: */ PragFlg_Result0,
513 /* ColNames: */ 0, 0,
514 /* iArg: */ 0 },
515 #endif
516 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
517 {/* zName: */ "short_column_names",
518 /* ePragTyp: */ PragTyp_FLAG,
519 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
520 /* ColNames: */ 0, 0,
521 /* iArg: */ SQLITE_ShortColNames },
522 #endif
523 {/* zName: */ "shrink_memory",
524 /* ePragTyp: */ PragTyp_SHRINK_MEMORY,
525 /* ePragFlg: */ PragFlg_NoColumns,
526 /* ColNames: */ 0, 0,
527 /* iArg: */ 0 },
528 {/* zName: */ "soft_heap_limit",
529 /* ePragTyp: */ PragTyp_SOFT_HEAP_LIMIT,
530 /* ePragFlg: */ PragFlg_Result0,
531 /* ColNames: */ 0, 0,
532 /* iArg: */ 0 },
533 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
534 #if defined(SQLITE_DEBUG)
535 {/* zName: */ "sql_trace",
536 /* ePragTyp: */ PragTyp_FLAG,
537 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
538 /* ColNames: */ 0, 0,
539 /* iArg: */ SQLITE_SqlTrace },
540 #endif
541 #endif
542 #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS) && defined(SQLITE_DEBUG)
543 {/* zName: */ "stats",
544 /* ePragTyp: */ PragTyp_STATS,
545 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
546 /* ColNames: */ 27, 5,
547 /* iArg: */ 0 },
548 #endif
549 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
550 {/* zName: */ "synchronous",
551 /* ePragTyp: */ PragTyp_SYNCHRONOUS,
552 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
553 /* ColNames: */ 0, 0,
554 /* iArg: */ 0 },
555 #endif
556 #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
557 {/* zName: */ "table_info",
558 /* ePragTyp: */ PragTyp_TABLE_INFO,
559 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
560 /* ColNames: */ 8, 6,
561 /* iArg: */ 0 },
562 {/* zName: */ "table_xinfo",
563 /* ePragTyp: */ PragTyp_TABLE_INFO,
564 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
565 /* ColNames: */ 8, 7,
566 /* iArg: */ 1 },
567 #endif
568 #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
569 {/* zName: */ "temp_store",
570 /* ePragTyp: */ PragTyp_TEMP_STORE,
571 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
572 /* ColNames: */ 0, 0,
573 /* iArg: */ 0 },
574 {/* zName: */ "temp_store_directory",
575 /* ePragTyp: */ PragTyp_TEMP_STORE_DIRECTORY,
576 /* ePragFlg: */ PragFlg_NoColumns1,
577 /* ColNames: */ 0, 0,
578 /* iArg: */ 0 },
579 #endif
580 {/* zName: */ "threads",
581 /* ePragTyp: */ PragTyp_THREADS,
582 /* ePragFlg: */ PragFlg_Result0,
583 /* ColNames: */ 0, 0,
584 /* iArg: */ 0 },
585 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
586 {/* zName: */ "trusted_schema",
587 /* ePragTyp: */ PragTyp_FLAG,
588 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
589 /* ColNames: */ 0, 0,
590 /* iArg: */ SQLITE_TrustedSchema },
591 #endif
592 #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
593 {/* zName: */ "user_version",
594 /* ePragTyp: */ PragTyp_HEADER_VALUE,
595 /* ePragFlg: */ PragFlg_NoColumns1|PragFlg_Result0,
596 /* ColNames: */ 0, 0,
597 /* iArg: */ BTREE_USER_VERSION },
598 #endif
599 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
600 #if defined(SQLITE_DEBUG)
601 {/* zName: */ "vdbe_addoptrace",
602 /* ePragTyp: */ PragTyp_FLAG,
603 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
604 /* ColNames: */ 0, 0,
605 /* iArg: */ SQLITE_VdbeAddopTrace },
606 {/* zName: */ "vdbe_debug",
607 /* ePragTyp: */ PragTyp_FLAG,
608 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
609 /* ColNames: */ 0, 0,
610 /* iArg: */ SQLITE_SqlTrace|SQLITE_VdbeListing|SQLITE_VdbeTrace },
611 {/* zName: */ "vdbe_eqp",
612 /* ePragTyp: */ PragTyp_FLAG,
613 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
614 /* ColNames: */ 0, 0,
615 /* iArg: */ SQLITE_VdbeEQP },
616 {/* zName: */ "vdbe_listing",
617 /* ePragTyp: */ PragTyp_FLAG,
618 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
619 /* ColNames: */ 0, 0,
620 /* iArg: */ SQLITE_VdbeListing },
621 {/* zName: */ "vdbe_trace",
622 /* ePragTyp: */ PragTyp_FLAG,
623 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
624 /* ColNames: */ 0, 0,
625 /* iArg: */ SQLITE_VdbeTrace },
626 #endif
627 #endif
628 #if !defined(SQLITE_OMIT_WAL)
629 {/* zName: */ "wal_autocheckpoint",
630 /* ePragTyp: */ PragTyp_WAL_AUTOCHECKPOINT,
631 /* ePragFlg: */ 0,
632 /* ColNames: */ 0, 0,
633 /* iArg: */ 0 },
634 {/* zName: */ "wal_checkpoint",
635 /* ePragTyp: */ PragTyp_WAL_CHECKPOINT,
636 /* ePragFlg: */ PragFlg_NeedSchema,
637 /* ColNames: */ 44, 3,
638 /* iArg: */ 0 },
639 #endif
640 #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
641 {/* zName: */ "writable_schema",
642 /* ePragTyp: */ PragTyp_FLAG,
643 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
644 /* ColNames: */ 0, 0,
645 /* iArg: */ SQLITE_WriteSchema|SQLITE_NoSchemaError },
646 #endif
648 /* Number of pragmas: 67 on by default, 77 total. */