blob: 49a4080fe90de3a737c0980e432c808cadf619cd [file] [log] [blame]
drh67e65e52015-02-02 21:34:54 +00001/* 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*/
drhc232aca2016-12-15 16:01:17 +00006
7/* The various pragma types */
drh67e65e52015-02-02 21:34:54 +00008#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
drh9b0cf342015-11-12 14:57:19 +000013#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_INCREMENTAL_VACUUM 15
24#define PragTyp_INDEX_INFO 16
25#define PragTyp_INDEX_LIST 17
26#define PragTyp_INTEGRITY_CHECK 18
27#define PragTyp_JOURNAL_MODE 19
28#define PragTyp_JOURNAL_SIZE_LIMIT 20
29#define PragTyp_LOCK_PROXY_FILE 21
30#define PragTyp_LOCKING_MODE 22
31#define PragTyp_PAGE_COUNT 23
32#define PragTyp_MMAP_SIZE 24
33#define PragTyp_PAGE_SIZE 25
34#define PragTyp_SECURE_DELETE 26
35#define PragTyp_SHRINK_MEMORY 27
36#define PragTyp_SOFT_HEAP_LIMIT 28
37#define PragTyp_STATS 29
38#define PragTyp_SYNCHRONOUS 30
39#define PragTyp_TABLE_INFO 31
40#define PragTyp_TEMP_STORE 32
41#define PragTyp_TEMP_STORE_DIRECTORY 33
42#define PragTyp_THREADS 34
43#define PragTyp_WAL_AUTOCHECKPOINT 35
44#define PragTyp_WAL_CHECKPOINT 36
45#define PragTyp_ACTIVATE_EXTENSIONS 37
46#define PragTyp_HEXKEY 38
47#define PragTyp_KEY 39
48#define PragTyp_REKEY 40
49#define PragTyp_LOCK_STATUS 41
50#define PragTyp_PARSER_TRACE 42
drhc232aca2016-12-15 16:01:17 +000051
52/* Property flags associated with various pragma. */
53#define PragFlg_NeedSchema 0x01 /* Force schema load before running */
54#define PragFlg_NoColumns 0x02 /* OP_ResultRow called with zero columns */
dan9e1ab1a2017-01-05 19:32:48 +000055#define PragFlg_NoColumns1 0x04 /* zero columns if RHS argument is present */
56#define PragFlg_ReadOnly 0x08 /* Read-only HEADER_VALUE */
57#define PragFlg_Result0 0x10 /* Acts as query when no argument */
58#define PragFlg_Result1 0x20 /* Acts as query when has one argument */
59#define PragFlg_SchemaOpt 0x40 /* Schema restricts name search if present */
60#define PragFlg_SchemaReq 0x80 /* Schema required - "main" is default */
drhc232aca2016-12-15 16:01:17 +000061
62/* Names of columns for pragmas that return multi-column result
63** or that return single-column results where the name of the
64** result column is different from the name of the pragma
65*/
66static const char *const pragCName[] = {
67 /* 0 */ "cache_size", /* Used by: default_cache_size */
68 /* 1 */ "cid", /* Used by: table_info */
69 /* 2 */ "name",
70 /* 3 */ "type",
71 /* 4 */ "notnull",
72 /* 5 */ "dflt_value",
73 /* 6 */ "pk",
74 /* 7 */ "table", /* Used by: stats */
75 /* 8 */ "index",
76 /* 9 */ "width",
77 /* 10 */ "height",
78 /* 11 */ "seqno", /* Used by: index_info */
79 /* 12 */ "cid",
80 /* 13 */ "name",
81 /* 14 */ "seqno", /* Used by: index_xinfo */
82 /* 15 */ "cid",
83 /* 16 */ "name",
84 /* 17 */ "desc",
85 /* 18 */ "coll",
86 /* 19 */ "key",
87 /* 20 */ "seq", /* Used by: index_list */
88 /* 21 */ "name",
89 /* 22 */ "unique",
90 /* 23 */ "origin",
91 /* 24 */ "partial",
92 /* 25 */ "seq", /* Used by: database_list */
93 /* 26 */ "name",
94 /* 27 */ "file",
95 /* 28 */ "seq", /* Used by: collation_list */
96 /* 29 */ "name",
97 /* 30 */ "id", /* Used by: foreign_key_list */
98 /* 31 */ "seq",
99 /* 32 */ "table",
100 /* 33 */ "from",
101 /* 34 */ "to",
102 /* 35 */ "on_update",
103 /* 36 */ "on_delete",
104 /* 37 */ "match",
105 /* 38 */ "table", /* Used by: foreign_key_check */
106 /* 39 */ "rowid",
107 /* 40 */ "parent",
108 /* 41 */ "fkid",
109 /* 42 */ "busy", /* Used by: wal_checkpoint */
110 /* 43 */ "log",
111 /* 44 */ "checkpointed",
112 /* 45 */ "timeout", /* Used by: busy_timeout */
113 /* 46 */ "database", /* Used by: lock_status */
114 /* 47 */ "status",
115};
116
117/* Definitions of all built-in pragmas */
drh2fcc1592016-12-15 20:59:03 +0000118typedef struct PragmaName {
drhc232aca2016-12-15 16:01:17 +0000119 const char *const zName; /* Name of pragma */
120 u8 ePragTyp; /* PragTyp_XXX value */
121 u8 mPragFlg; /* Zero or more PragFlg_XXX values */
122 u8 iPragCName; /* Start of column names in pragCName[] */
123 u8 nPragCName; /* Num of col names. 0 means use pragma name */
124 u32 iArg; /* Extra argument */
drh2fcc1592016-12-15 20:59:03 +0000125} PragmaName;
126static const PragmaName aPragmaName[] = {
drh67e65e52015-02-02 21:34:54 +0000127#if defined(SQLITE_HAS_CODEC) || defined(SQLITE_ENABLE_CEROD)
drhc232aca2016-12-15 16:01:17 +0000128 {/* zName: */ "activate_extensions",
129 /* ePragTyp: */ PragTyp_ACTIVATE_EXTENSIONS,
130 /* ePragFlg: */ 0,
131 /* ColNames: */ 0, 0,
132 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000133#endif
134#if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000135 {/* zName: */ "application_id",
136 /* ePragTyp: */ PragTyp_HEADER_VALUE,
dan9e1ab1a2017-01-05 19:32:48 +0000137 /* ePragFlg: */ PragFlg_NoColumns1|PragFlg_Result0,
drhc232aca2016-12-15 16:01:17 +0000138 /* ColNames: */ 0, 0,
139 /* iArg: */ BTREE_APPLICATION_ID },
drh67e65e52015-02-02 21:34:54 +0000140#endif
141#if !defined(SQLITE_OMIT_AUTOVACUUM)
drhc232aca2016-12-15 16:01:17 +0000142 {/* zName: */ "auto_vacuum",
143 /* ePragTyp: */ PragTyp_AUTO_VACUUM,
dan9e1ab1a2017-01-05 19:32:48 +0000144 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000145 /* ColNames: */ 0, 0,
146 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000147#endif
148#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
149#if !defined(SQLITE_OMIT_AUTOMATIC_INDEX)
drhc232aca2016-12-15 16:01:17 +0000150 {/* zName: */ "automatic_index",
151 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000152 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000153 /* ColNames: */ 0, 0,
154 /* iArg: */ SQLITE_AutoIndex },
drh67e65e52015-02-02 21:34:54 +0000155#endif
156#endif
drhc232aca2016-12-15 16:01:17 +0000157 {/* zName: */ "busy_timeout",
158 /* ePragTyp: */ PragTyp_BUSY_TIMEOUT,
159 /* ePragFlg: */ PragFlg_Result0,
160 /* ColNames: */ 45, 1,
161 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000162#if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000163 {/* zName: */ "cache_size",
164 /* ePragTyp: */ PragTyp_CACHE_SIZE,
dan9e1ab1a2017-01-05 19:32:48 +0000165 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000166 /* ColNames: */ 0, 0,
167 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000168#endif
169#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000170 {/* zName: */ "cache_spill",
171 /* ePragTyp: */ PragTyp_CACHE_SPILL,
dan9e1ab1a2017-01-05 19:32:48 +0000172 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000173 /* ColNames: */ 0, 0,
174 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000175#endif
drhc232aca2016-12-15 16:01:17 +0000176 {/* zName: */ "case_sensitive_like",
177 /* ePragTyp: */ PragTyp_CASE_SENSITIVE_LIKE,
178 /* ePragFlg: */ 0,
179 /* ColNames: */ 0, 0,
180 /* iArg: */ 0 },
181 {/* zName: */ "cell_size_check",
182 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000183 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000184 /* ColNames: */ 0, 0,
185 /* iArg: */ SQLITE_CellSizeCk },
drh67e65e52015-02-02 21:34:54 +0000186#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000187 {/* zName: */ "checkpoint_fullfsync",
188 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000189 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000190 /* ColNames: */ 0, 0,
191 /* iArg: */ SQLITE_CkptFullFSync },
drh67e65e52015-02-02 21:34:54 +0000192#endif
193#if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000194 {/* zName: */ "collation_list",
195 /* ePragTyp: */ PragTyp_COLLATION_LIST,
196 /* ePragFlg: */ PragFlg_Result0,
197 /* ColNames: */ 28, 2,
198 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000199#endif
200#if !defined(SQLITE_OMIT_COMPILEOPTION_DIAGS)
drhc232aca2016-12-15 16:01:17 +0000201 {/* zName: */ "compile_options",
202 /* ePragTyp: */ PragTyp_COMPILE_OPTIONS,
203 /* ePragFlg: */ PragFlg_Result0,
204 /* ColNames: */ 0, 0,
205 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000206#endif
207#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000208 {/* zName: */ "count_changes",
209 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000210 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000211 /* ColNames: */ 0, 0,
212 /* iArg: */ SQLITE_CountRows },
drh67e65e52015-02-02 21:34:54 +0000213#endif
214#if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && SQLITE_OS_WIN
drhc232aca2016-12-15 16:01:17 +0000215 {/* zName: */ "data_store_directory",
216 /* ePragTyp: */ PragTyp_DATA_STORE_DIRECTORY,
dan9e1ab1a2017-01-05 19:32:48 +0000217 /* ePragFlg: */ PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000218 /* ColNames: */ 0, 0,
219 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000220#endif
221#if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000222 {/* zName: */ "data_version",
223 /* ePragTyp: */ PragTyp_HEADER_VALUE,
dan9e1ab1a2017-01-05 19:32:48 +0000224 /* ePragFlg: */ PragFlg_ReadOnly|PragFlg_Result0,
drhc232aca2016-12-15 16:01:17 +0000225 /* ColNames: */ 0, 0,
226 /* iArg: */ BTREE_DATA_VERSION },
drh67e65e52015-02-02 21:34:54 +0000227#endif
228#if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000229 {/* zName: */ "database_list",
230 /* ePragTyp: */ PragTyp_DATABASE_LIST,
231 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0,
232 /* ColNames: */ 25, 3,
233 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000234#endif
235#if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && !defined(SQLITE_OMIT_DEPRECATED)
drhc232aca2016-12-15 16:01:17 +0000236 {/* zName: */ "default_cache_size",
237 /* ePragTyp: */ PragTyp_DEFAULT_CACHE_SIZE,
dan9e1ab1a2017-01-05 19:32:48 +0000238 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000239 /* ColNames: */ 0, 1,
240 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000241#endif
242#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
243#if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
drhc232aca2016-12-15 16:01:17 +0000244 {/* zName: */ "defer_foreign_keys",
245 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000246 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000247 /* ColNames: */ 0, 0,
248 /* iArg: */ SQLITE_DeferFKs },
drh67e65e52015-02-02 21:34:54 +0000249#endif
250#endif
251#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000252 {/* zName: */ "empty_result_callbacks",
253 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000254 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000255 /* ColNames: */ 0, 0,
256 /* iArg: */ SQLITE_NullCallback },
drh67e65e52015-02-02 21:34:54 +0000257#endif
258#if !defined(SQLITE_OMIT_UTF16)
drhc232aca2016-12-15 16:01:17 +0000259 {/* zName: */ "encoding",
260 /* ePragTyp: */ PragTyp_ENCODING,
dan9e1ab1a2017-01-05 19:32:48 +0000261 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000262 /* ColNames: */ 0, 0,
263 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000264#endif
265#if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
drhc232aca2016-12-15 16:01:17 +0000266 {/* zName: */ "foreign_key_check",
267 /* ePragTyp: */ PragTyp_FOREIGN_KEY_CHECK,
268 /* ePragFlg: */ PragFlg_NeedSchema,
269 /* ColNames: */ 38, 4,
270 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000271#endif
272#if !defined(SQLITE_OMIT_FOREIGN_KEY)
drhc232aca2016-12-15 16:01:17 +0000273 {/* zName: */ "foreign_key_list",
274 /* ePragTyp: */ PragTyp_FOREIGN_KEY_LIST,
275 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
276 /* ColNames: */ 30, 8,
277 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000278#endif
279#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
280#if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
drhc232aca2016-12-15 16:01:17 +0000281 {/* zName: */ "foreign_keys",
282 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000283 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000284 /* ColNames: */ 0, 0,
285 /* iArg: */ SQLITE_ForeignKeys },
drh67e65e52015-02-02 21:34:54 +0000286#endif
287#endif
288#if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000289 {/* zName: */ "freelist_count",
290 /* ePragTyp: */ PragTyp_HEADER_VALUE,
dan9e1ab1a2017-01-05 19:32:48 +0000291 /* ePragFlg: */ PragFlg_ReadOnly|PragFlg_Result0,
drhc232aca2016-12-15 16:01:17 +0000292 /* ColNames: */ 0, 0,
293 /* iArg: */ BTREE_FREE_PAGE_COUNT },
drh67e65e52015-02-02 21:34:54 +0000294#endif
295#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000296 {/* zName: */ "full_column_names",
297 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000298 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000299 /* ColNames: */ 0, 0,
300 /* iArg: */ SQLITE_FullColNames },
301 {/* zName: */ "fullfsync",
302 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000303 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000304 /* ColNames: */ 0, 0,
305 /* iArg: */ SQLITE_FullFSync },
drh67e65e52015-02-02 21:34:54 +0000306#endif
307#if defined(SQLITE_HAS_CODEC)
drhc232aca2016-12-15 16:01:17 +0000308 {/* zName: */ "hexkey",
309 /* ePragTyp: */ PragTyp_HEXKEY,
310 /* ePragFlg: */ 0,
311 /* ColNames: */ 0, 0,
312 /* iArg: */ 0 },
313 {/* zName: */ "hexrekey",
314 /* ePragTyp: */ PragTyp_HEXKEY,
315 /* ePragFlg: */ 0,
316 /* ColNames: */ 0, 0,
317 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000318#endif
319#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
320#if !defined(SQLITE_OMIT_CHECK)
drhc232aca2016-12-15 16:01:17 +0000321 {/* zName: */ "ignore_check_constraints",
322 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000323 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000324 /* ColNames: */ 0, 0,
325 /* iArg: */ SQLITE_IgnoreChecks },
drh67e65e52015-02-02 21:34:54 +0000326#endif
327#endif
328#if !defined(SQLITE_OMIT_AUTOVACUUM)
drhc232aca2016-12-15 16:01:17 +0000329 {/* zName: */ "incremental_vacuum",
330 /* ePragTyp: */ PragTyp_INCREMENTAL_VACUUM,
331 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_NoColumns,
332 /* ColNames: */ 0, 0,
333 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000334#endif
335#if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000336 {/* zName: */ "index_info",
337 /* ePragTyp: */ PragTyp_INDEX_INFO,
338 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
339 /* ColNames: */ 11, 3,
340 /* iArg: */ 0 },
341 {/* zName: */ "index_list",
342 /* ePragTyp: */ PragTyp_INDEX_LIST,
343 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
344 /* ColNames: */ 20, 5,
345 /* iArg: */ 0 },
346 {/* zName: */ "index_xinfo",
347 /* ePragTyp: */ PragTyp_INDEX_INFO,
348 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
349 /* ColNames: */ 14, 6,
350 /* iArg: */ 1 },
drh67e65e52015-02-02 21:34:54 +0000351#endif
352#if !defined(SQLITE_OMIT_INTEGRITY_CHECK)
drhc232aca2016-12-15 16:01:17 +0000353 {/* zName: */ "integrity_check",
354 /* ePragTyp: */ PragTyp_INTEGRITY_CHECK,
355 /* ePragFlg: */ PragFlg_NeedSchema,
356 /* ColNames: */ 0, 0,
357 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000358#endif
359#if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000360 {/* zName: */ "journal_mode",
361 /* ePragTyp: */ PragTyp_JOURNAL_MODE,
362 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
363 /* ColNames: */ 0, 0,
364 /* iArg: */ 0 },
365 {/* zName: */ "journal_size_limit",
366 /* ePragTyp: */ PragTyp_JOURNAL_SIZE_LIMIT,
367 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq,
368 /* ColNames: */ 0, 0,
369 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000370#endif
371#if defined(SQLITE_HAS_CODEC)
drhc232aca2016-12-15 16:01:17 +0000372 {/* zName: */ "key",
373 /* ePragTyp: */ PragTyp_KEY,
374 /* ePragFlg: */ 0,
375 /* ColNames: */ 0, 0,
376 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000377#endif
378#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000379 {/* zName: */ "legacy_file_format",
380 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000381 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000382 /* ColNames: */ 0, 0,
383 /* iArg: */ SQLITE_LegacyFileFmt },
drh67e65e52015-02-02 21:34:54 +0000384#endif
385#if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && SQLITE_ENABLE_LOCKING_STYLE
drhc232aca2016-12-15 16:01:17 +0000386 {/* zName: */ "lock_proxy_file",
387 /* ePragTyp: */ PragTyp_LOCK_PROXY_FILE,
dan9e1ab1a2017-01-05 19:32:48 +0000388 /* ePragFlg: */ PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000389 /* ColNames: */ 0, 0,
390 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000391#endif
392#if defined(SQLITE_DEBUG) || defined(SQLITE_TEST)
drhc232aca2016-12-15 16:01:17 +0000393 {/* zName: */ "lock_status",
394 /* ePragTyp: */ PragTyp_LOCK_STATUS,
395 /* ePragFlg: */ PragFlg_Result0,
396 /* ColNames: */ 46, 2,
397 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000398#endif
399#if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000400 {/* zName: */ "locking_mode",
401 /* ePragTyp: */ PragTyp_LOCKING_MODE,
402 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq,
403 /* ColNames: */ 0, 0,
404 /* iArg: */ 0 },
405 {/* zName: */ "max_page_count",
406 /* ePragTyp: */ PragTyp_PAGE_COUNT,
407 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
408 /* ColNames: */ 0, 0,
409 /* iArg: */ 0 },
410 {/* zName: */ "mmap_size",
411 /* ePragTyp: */ PragTyp_MMAP_SIZE,
412 /* ePragFlg: */ 0,
413 /* ColNames: */ 0, 0,
414 /* iArg: */ 0 },
415 {/* zName: */ "page_count",
416 /* ePragTyp: */ PragTyp_PAGE_COUNT,
417 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
418 /* ColNames: */ 0, 0,
419 /* iArg: */ 0 },
420 {/* zName: */ "page_size",
421 /* ePragTyp: */ PragTyp_PAGE_SIZE,
dan9e1ab1a2017-01-05 19:32:48 +0000422 /* ePragFlg: */ PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000423 /* ColNames: */ 0, 0,
424 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000425#endif
drh35926802015-12-15 13:50:22 +0000426#if defined(SQLITE_DEBUG) && !defined(SQLITE_OMIT_PARSER_TRACE)
drhc232aca2016-12-15 16:01:17 +0000427 {/* zName: */ "parser_trace",
428 /* ePragTyp: */ PragTyp_PARSER_TRACE,
429 /* ePragFlg: */ 0,
430 /* ColNames: */ 0, 0,
431 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000432#endif
433#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000434 {/* zName: */ "query_only",
435 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000436 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000437 /* ColNames: */ 0, 0,
438 /* iArg: */ SQLITE_QueryOnly },
drh67e65e52015-02-02 21:34:54 +0000439#endif
440#if !defined(SQLITE_OMIT_INTEGRITY_CHECK)
drhc232aca2016-12-15 16:01:17 +0000441 {/* zName: */ "quick_check",
442 /* ePragTyp: */ PragTyp_INTEGRITY_CHECK,
443 /* ePragFlg: */ PragFlg_NeedSchema,
444 /* ColNames: */ 0, 0,
445 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000446#endif
447#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000448 {/* zName: */ "read_uncommitted",
449 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000450 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000451 /* ColNames: */ 0, 0,
452 /* iArg: */ SQLITE_ReadUncommitted },
453 {/* zName: */ "recursive_triggers",
454 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000455 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000456 /* ColNames: */ 0, 0,
457 /* iArg: */ SQLITE_RecTriggers },
drh67e65e52015-02-02 21:34:54 +0000458#endif
459#if defined(SQLITE_HAS_CODEC)
drhc232aca2016-12-15 16:01:17 +0000460 {/* zName: */ "rekey",
461 /* ePragTyp: */ PragTyp_REKEY,
462 /* ePragFlg: */ 0,
463 /* ColNames: */ 0, 0,
464 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000465#endif
466#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000467 {/* zName: */ "reverse_unordered_selects",
468 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000469 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000470 /* ColNames: */ 0, 0,
471 /* iArg: */ SQLITE_ReverseOrder },
drh67e65e52015-02-02 21:34:54 +0000472#endif
473#if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000474 {/* zName: */ "schema_version",
475 /* ePragTyp: */ PragTyp_HEADER_VALUE,
dan9e1ab1a2017-01-05 19:32:48 +0000476 /* ePragFlg: */ PragFlg_NoColumns1|PragFlg_Result0,
drhc232aca2016-12-15 16:01:17 +0000477 /* ColNames: */ 0, 0,
478 /* iArg: */ BTREE_SCHEMA_VERSION },
drh67e65e52015-02-02 21:34:54 +0000479#endif
480#if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000481 {/* zName: */ "secure_delete",
482 /* ePragTyp: */ PragTyp_SECURE_DELETE,
483 /* ePragFlg: */ PragFlg_Result0,
484 /* ColNames: */ 0, 0,
485 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000486#endif
487#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000488 {/* zName: */ "short_column_names",
489 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000490 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000491 /* ColNames: */ 0, 0,
492 /* iArg: */ SQLITE_ShortColNames },
drh67e65e52015-02-02 21:34:54 +0000493#endif
drhc232aca2016-12-15 16:01:17 +0000494 {/* zName: */ "shrink_memory",
495 /* ePragTyp: */ PragTyp_SHRINK_MEMORY,
496 /* ePragFlg: */ 0,
497 /* ColNames: */ 0, 0,
498 /* iArg: */ 0 },
499 {/* zName: */ "soft_heap_limit",
500 /* ePragTyp: */ PragTyp_SOFT_HEAP_LIMIT,
501 /* ePragFlg: */ PragFlg_Result0,
502 /* ColNames: */ 0, 0,
503 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000504#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
505#if defined(SQLITE_DEBUG)
drhc232aca2016-12-15 16:01:17 +0000506 {/* zName: */ "sql_trace",
507 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000508 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000509 /* ColNames: */ 0, 0,
510 /* iArg: */ SQLITE_SqlTrace },
drh67e65e52015-02-02 21:34:54 +0000511#endif
512#endif
513#if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000514 {/* zName: */ "stats",
515 /* ePragTyp: */ PragTyp_STATS,
516 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq,
517 /* ColNames: */ 7, 4,
518 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000519#endif
520#if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000521 {/* zName: */ "synchronous",
522 /* ePragTyp: */ PragTyp_SYNCHRONOUS,
dan9e1ab1a2017-01-05 19:32:48 +0000523 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result0|PragFlg_SchemaReq|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000524 /* ColNames: */ 0, 0,
525 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000526#endif
527#if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000528 {/* zName: */ "table_info",
529 /* ePragTyp: */ PragTyp_TABLE_INFO,
530 /* ePragFlg: */ PragFlg_NeedSchema|PragFlg_Result1|PragFlg_SchemaOpt,
531 /* ColNames: */ 1, 6,
532 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000533#endif
534#if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000535 {/* zName: */ "temp_store",
536 /* ePragTyp: */ PragTyp_TEMP_STORE,
dan9e1ab1a2017-01-05 19:32:48 +0000537 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000538 /* ColNames: */ 0, 0,
539 /* iArg: */ 0 },
540 {/* zName: */ "temp_store_directory",
541 /* ePragTyp: */ PragTyp_TEMP_STORE_DIRECTORY,
dan9e1ab1a2017-01-05 19:32:48 +0000542 /* ePragFlg: */ PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000543 /* ColNames: */ 0, 0,
544 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000545#endif
drhc232aca2016-12-15 16:01:17 +0000546 {/* zName: */ "threads",
547 /* ePragTyp: */ PragTyp_THREADS,
548 /* ePragFlg: */ PragFlg_Result0,
549 /* ColNames: */ 0, 0,
550 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000551#if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000552 {/* zName: */ "user_version",
553 /* ePragTyp: */ PragTyp_HEADER_VALUE,
dan9e1ab1a2017-01-05 19:32:48 +0000554 /* ePragFlg: */ PragFlg_NoColumns1|PragFlg_Result0,
drhc232aca2016-12-15 16:01:17 +0000555 /* ColNames: */ 0, 0,
556 /* iArg: */ BTREE_USER_VERSION },
drh67e65e52015-02-02 21:34:54 +0000557#endif
558#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
559#if defined(SQLITE_DEBUG)
drhc232aca2016-12-15 16:01:17 +0000560 {/* zName: */ "vdbe_addoptrace",
561 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000562 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000563 /* ColNames: */ 0, 0,
564 /* iArg: */ SQLITE_VdbeAddopTrace },
565 {/* zName: */ "vdbe_debug",
566 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000567 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000568 /* ColNames: */ 0, 0,
569 /* iArg: */ SQLITE_SqlTrace|SQLITE_VdbeListing|SQLITE_VdbeTrace },
570 {/* zName: */ "vdbe_eqp",
571 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000572 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000573 /* ColNames: */ 0, 0,
574 /* iArg: */ SQLITE_VdbeEQP },
575 {/* zName: */ "vdbe_listing",
576 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000577 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000578 /* ColNames: */ 0, 0,
579 /* iArg: */ SQLITE_VdbeListing },
580 {/* zName: */ "vdbe_trace",
581 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000582 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000583 /* ColNames: */ 0, 0,
584 /* iArg: */ SQLITE_VdbeTrace },
drh67e65e52015-02-02 21:34:54 +0000585#endif
586#endif
587#if !defined(SQLITE_OMIT_WAL)
drhc232aca2016-12-15 16:01:17 +0000588 {/* zName: */ "wal_autocheckpoint",
589 /* ePragTyp: */ PragTyp_WAL_AUTOCHECKPOINT,
590 /* ePragFlg: */ 0,
591 /* ColNames: */ 0, 0,
592 /* iArg: */ 0 },
593 {/* zName: */ "wal_checkpoint",
594 /* ePragTyp: */ PragTyp_WAL_CHECKPOINT,
595 /* ePragFlg: */ PragFlg_NeedSchema,
596 /* ColNames: */ 42, 3,
597 /* iArg: */ 0 },
drh67e65e52015-02-02 21:34:54 +0000598#endif
599#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
drhc232aca2016-12-15 16:01:17 +0000600 {/* zName: */ "writable_schema",
601 /* ePragTyp: */ PragTyp_FLAG,
dan9e1ab1a2017-01-05 19:32:48 +0000602 /* ePragFlg: */ PragFlg_Result0|PragFlg_NoColumns1,
drhc232aca2016-12-15 16:01:17 +0000603 /* ColNames: */ 0, 0,
604 /* iArg: */ SQLITE_WriteSchema|SQLITE_RecoveryMode },
drh67e65e52015-02-02 21:34:54 +0000605#endif
606};
drh1421d982015-05-27 03:46:18 +0000607/* Number of pragmas: 60 on by default, 73 total. */