xref: /sqlite-3.40.0/src/pragma.h (revision 9b8c5f68)
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 */
6 
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
55 
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 */
65 
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
69 */
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",
123 };
124 
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
648 };
649 /* Number of pragmas: 60 on by default, 77 total. */
650