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