Add the "Pragma_list" pragma. Put all three pragmas created on this branch
inside of #ifdef SQLITE_INTROSPECTION_PRAGMAS. FossilOrigin-Name: 2f3c3781ef3d66ecafef083d7144287ff23eea5a6d93b014dfeb2a8ac71f757e
This commit is contained in:
parent
ab53bb635c
commit
8ae11aac93
19
manifest
19
manifest
@ -1,5 +1,5 @@
|
||||
C Add\snew\spragmas:\s"function_list"\sand\s"module_list"
|
||||
D 2017-07-07T15:43:22.754
|
||||
C Add\sthe\s"Pragma_list"\spragma.\s\sPut\sall\sthree\spragmas\screated\son\sthis\sbranch\ninside\sof\s#ifdef\sSQLITE_INTROSPECTION_PRAGMAS.
|
||||
D 2017-07-07T17:33:07.198
|
||||
F Makefile.in 081e48dfe7f995d57ce1a88ddf4d2917b4349158648a6cd45b42beae30de3a12
|
||||
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
|
||||
F Makefile.msc 4ebb1d257cac7fb1bcb4ba59278416d410ff1c4bf59447a9c37a415f3516056a
|
||||
@ -441,8 +441,8 @@ F src/parse.y 71bf06b02f567232deabe258641b03e833e93c4dee61a120765ad74c13e7faec
|
||||
F src/pcache.c 62835bed959e2914edd26afadfecce29ece0e870
|
||||
F src/pcache.h 521bb9610d38ef17a3cc9b5ddafd4546c2ea67fa3d0e464823d73c2a28d50e11
|
||||
F src/pcache1.c 1195a21fe28e223e024f900b2011e80df53793f0356a24caace4188b098540dc
|
||||
F src/pragma.c 415a98ec60bd209b69e502f07f1c7b9a84140d7e44332202367b2d60e7c30e60
|
||||
F src/pragma.h 0d5573ec6c5aa8e65a7d1b33055b868295f16d1ee6aa754754fc1fc75ececd1a
|
||||
F src/pragma.c 072f2907f63ca779b08a2bb97706cf0b61663fbbebdc891b882cb7d0ed21c4e5
|
||||
F src/pragma.h bb83728944b42f6d409c77f5838a8edbdb0fe83046c5496ffc9602b40340a324
|
||||
F src/prepare.c 4b84ae7458febe1df3e04ae62ba56abc851f771340e460d14426e6802c5615f4
|
||||
F src/printf.c 8757834f1b54dae512fb25eb1acc8e94a0d15dd2290b58f2563f65973265adb2
|
||||
F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384
|
||||
@ -1566,7 +1566,7 @@ F tool/mkmsvcmin.tcl cbd93f1cfa3a0a9ae56fc958510aa3fc3ac65e29cb111716199e3d0e66e
|
||||
F tool/mkopcodec.tcl d1b6362bd3aa80d5520d4d6f3765badf01f6c43c
|
||||
F tool/mkopcodeh.tcl a01d2c1d8a6205b03fc635adf3735b4c523befd3
|
||||
F tool/mkopts.tcl 66ac10d240cc6e86abd37dc908d50382f84ff46e
|
||||
F tool/mkpragmatab.tcl 3707a9586c5f3fccded77ac23b9f1672785f43c9bc0c1f49845bb81dbf8118d5
|
||||
F tool/mkpragmatab.tcl 2144bc8550a6471a029db262a132d2df4b9e0db61b90398bf64f5b7b3f8d92cd
|
||||
F tool/mkspeedsql.tcl a1a334d288f7adfe6e996f2e712becf076745c97
|
||||
F tool/mksqlite3c-noext.tcl fef88397668ae83166735c41af99d79f56afaabb
|
||||
F tool/mksqlite3c.tcl f6214285bec900d28441366ca31af327aade18bbc424b0480497966ec05bc43c
|
||||
@ -1628,10 +1628,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||
P aacbb9a461fdb34c7f9c8ce348e44c3e96c93334f210d438d92bfac1794dc686
|
||||
R 0f36dd9733d38244f7ca6a934ae9744a
|
||||
T *branch * list-pragmas
|
||||
T *sym-list-pragmas *
|
||||
T -sym-trunk *
|
||||
P e5f01d7fde05fdb547f35816ff15c31a92c170b31877f4c640b7bc2be3f580b3
|
||||
R 17fc399fdbe82a9f3fca67f0dc49bd1b
|
||||
U drh
|
||||
Z 4e2b289a760c670e9cafd6cf4ad4b9b9
|
||||
Z 8b4bd12deebcc9df8b73824fc89e2153
|
||||
|
@ -1 +1 @@
|
||||
e5f01d7fde05fdb547f35816ff15c31a92c170b31877f4c640b7bc2be3f580b3
|
||||
2f3c3781ef3d66ecafef083d7144287ff23eea5a6d93b014dfeb2a8ac71f757e
|
10
src/pragma.c
10
src/pragma.c
@ -1226,6 +1226,7 @@ void sqlite3Pragma(
|
||||
}
|
||||
break;
|
||||
|
||||
#ifdef SQLITE_INTROSPECTION_PRAGMAS
|
||||
case PragTyp_FUNCTION_LIST: {
|
||||
int i;
|
||||
HashElem *j;
|
||||
@ -1258,6 +1259,15 @@ void sqlite3Pragma(
|
||||
break;
|
||||
#endif /* SQLITE_OMIT_VIRTUALTABLE */
|
||||
|
||||
case PragTyp_PRAGMA_LIST: {
|
||||
int i;
|
||||
for(i=0; i<ArraySize(aPragmaName); i++){
|
||||
sqlite3VdbeMultiLoad(v, 1, "s", aPragmaName[i].zName);
|
||||
sqlite3VdbeAddOp2(v, OP_ResultRow, 1, 1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
#endif /* SQLITE_INTROSPECTION_PRAGMAS */
|
||||
|
||||
#endif /* SQLITE_OMIT_SCHEMA_PRAGMAS */
|
||||
|
||||
|
50
src/pragma.h
50
src/pragma.h
@ -34,23 +34,24 @@
|
||||
#define PragTyp_MODULE_LIST 26
|
||||
#define PragTyp_OPTIMIZE 27
|
||||
#define PragTyp_PAGE_SIZE 28
|
||||
#define PragTyp_SECURE_DELETE 29
|
||||
#define PragTyp_SHRINK_MEMORY 30
|
||||
#define PragTyp_SOFT_HEAP_LIMIT 31
|
||||
#define PragTyp_SYNCHRONOUS 32
|
||||
#define PragTyp_TABLE_INFO 33
|
||||
#define PragTyp_TEMP_STORE 34
|
||||
#define PragTyp_TEMP_STORE_DIRECTORY 35
|
||||
#define PragTyp_THREADS 36
|
||||
#define PragTyp_WAL_AUTOCHECKPOINT 37
|
||||
#define PragTyp_WAL_CHECKPOINT 38
|
||||
#define PragTyp_ACTIVATE_EXTENSIONS 39
|
||||
#define PragTyp_HEXKEY 40
|
||||
#define PragTyp_KEY 41
|
||||
#define PragTyp_REKEY 42
|
||||
#define PragTyp_LOCK_STATUS 43
|
||||
#define PragTyp_PARSER_TRACE 44
|
||||
#define PragTyp_STATS 45
|
||||
#define PragTyp_PRAGMA_LIST 29
|
||||
#define PragTyp_SECURE_DELETE 30
|
||||
#define PragTyp_SHRINK_MEMORY 31
|
||||
#define PragTyp_SOFT_HEAP_LIMIT 32
|
||||
#define PragTyp_SYNCHRONOUS 33
|
||||
#define PragTyp_TABLE_INFO 34
|
||||
#define PragTyp_TEMP_STORE 35
|
||||
#define PragTyp_TEMP_STORE_DIRECTORY 36
|
||||
#define PragTyp_THREADS 37
|
||||
#define PragTyp_WAL_AUTOCHECKPOINT 38
|
||||
#define PragTyp_WAL_CHECKPOINT 39
|
||||
#define PragTyp_ACTIVATE_EXTENSIONS 40
|
||||
#define PragTyp_HEXKEY 41
|
||||
#define PragTyp_KEY 42
|
||||
#define PragTyp_REKEY 43
|
||||
#define PragTyp_LOCK_STATUS 44
|
||||
#define PragTyp_PARSER_TRACE 45
|
||||
#define PragTyp_STATS 46
|
||||
|
||||
/* Property flags associated with various pragma. */
|
||||
#define PragFlg_NeedSchema 0x01 /* Force schema load before running */
|
||||
@ -98,7 +99,7 @@ static const char *const pragCName[] = {
|
||||
/* 28 */ "file",
|
||||
/* 29 */ "name", /* Used by: function_list */
|
||||
/* 30 */ "builtin",
|
||||
/* 31 */ "name", /* Used by: module_list */
|
||||
/* 31 */ "name", /* Used by: module_list pragma_list */
|
||||
/* 32 */ "seq", /* Used by: collation_list */
|
||||
/* 33 */ "name",
|
||||
/* 34 */ "id", /* Used by: foreign_key_list */
|
||||
@ -312,12 +313,14 @@ static const PragmaName aPragmaName[] = {
|
||||
/* iArg: */ SQLITE_FullFSync },
|
||||
#endif
|
||||
#if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
|
||||
#if defined(SQLITE_INTROSPECTION_PRAGMAS)
|
||||
{/* zName: */ "function_list",
|
||||
/* ePragTyp: */ PragTyp_FUNCTION_LIST,
|
||||
/* ePragFlg: */ PragFlg_Result0,
|
||||
/* ColNames: */ 29, 2,
|
||||
/* iArg: */ 0 },
|
||||
#endif
|
||||
#endif
|
||||
#if defined(SQLITE_HAS_CODEC)
|
||||
{/* zName: */ "hexkey",
|
||||
/* ePragTyp: */ PragTyp_HEXKEY,
|
||||
@ -429,12 +432,14 @@ static const PragmaName aPragmaName[] = {
|
||||
#endif
|
||||
#if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
|
||||
#if !defined(SQLITE_OMIT_VIRTUALTABLE)
|
||||
#if defined(SQLITE_INTROSPECTION_PRAGMAS)
|
||||
{/* zName: */ "module_list",
|
||||
/* ePragTyp: */ PragTyp_MODULE_LIST,
|
||||
/* ePragFlg: */ PragFlg_Result0,
|
||||
/* ColNames: */ 31, 1,
|
||||
/* iArg: */ 0 },
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
{/* zName: */ "optimize",
|
||||
/* ePragTyp: */ PragTyp_OPTIMIZE,
|
||||
@ -460,6 +465,13 @@ static const PragmaName aPragmaName[] = {
|
||||
/* ColNames: */ 0, 0,
|
||||
/* iArg: */ 0 },
|
||||
#endif
|
||||
#if defined(SQLITE_INTROSPECTION_PRAGMAS)
|
||||
{/* zName: */ "pragma_list",
|
||||
/* ePragTyp: */ PragTyp_PRAGMA_LIST,
|
||||
/* ePragFlg: */ PragFlg_Result0,
|
||||
/* ColNames: */ 31, 1,
|
||||
/* iArg: */ 0 },
|
||||
#endif
|
||||
#if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
|
||||
{/* zName: */ "query_only",
|
||||
/* ePragTyp: */ PragTyp_FLAG,
|
||||
@ -634,4 +646,4 @@ static const PragmaName aPragmaName[] = {
|
||||
/* iArg: */ SQLITE_WriteSchema },
|
||||
#endif
|
||||
};
|
||||
/* Number of pragmas: 62 on by default, 76 total. */
|
||||
/* Number of pragmas: 60 on by default, 77 total. */
|
||||
|
@ -256,12 +256,19 @@ set pragma_def {
|
||||
FLAG: Result0
|
||||
COLS: name builtin
|
||||
IF: !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
|
||||
IF: defined(SQLITE_INTROSPECTION_PRAGMAS)
|
||||
|
||||
NAME: module_list
|
||||
FLAG: Result0
|
||||
COLS: name
|
||||
IF: !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
|
||||
IF: !defined(SQLITE_OMIT_VIRTUALTABLE)
|
||||
IF: defined(SQLITE_INTROSPECTION_PRAGMAS)
|
||||
|
||||
NAME: pragma_list
|
||||
FLAG: Result0
|
||||
COLS: name
|
||||
IF: defined(SQLITE_INTROSPECTION_PRAGMAS)
|
||||
|
||||
NAME: collation_list
|
||||
FLAG: Result0
|
||||
|
Loading…
x
Reference in New Issue
Block a user