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