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