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