Small. Fast. Reliable.
Choose any three.

SQLite Requirement Matrix Details
c_dbconfig_enable_fkey.html

Index Summary Markup Original


R-42790-23372-13524-47335-35146-00064-12684-28505 tcl slt th3 src

The sqlite3_db_config() interface will return a non-zero error code if a discontinued or unsupported configuration option is invoked.

src/main.c:822   th3/req1/dbconfig01.test:16

/* IMP: R-42790-23372 */
# EVIDENCE-OF: R-42790-23372 The sqlite3_db_config() interface will
# return a non-zero error code if a discontinued or unsupported
# configuration option is invoked.

R-19648-30943-40070-65065-35301-05411-03146-42916 tcl slt th3 src

This option takes three additional arguments that determine the lookaside memory allocator configuration for the database connection.

th3/req1/dbconfig01.test:38

/* IMP: R-19648-30943 */
# EVIDENCE-OF: R-19648-30943 This option takes three additional
# arguments that determine the lookaside memory allocator configuration
# for the database connection.

R-26835-10964-22323-42888-35777-38355-20607-28933 tcl slt th3 src

The first argument (the third parameter to sqlite3_db_config() is a pointer to a memory buffer to use for lookaside memory.

src/main.c:803   th3/req1/dbconfig01.test:82

/* IMP: R-26835-10964 */
# EVIDENCE-OF: R-26835-10964 The first argument (the third parameter to
# sqlite3_db_config() is a pointer to a memory buffer to use for
# lookaside memory.

R-61949-35727-14867-12999-21207-20215-20581-25391 tcl slt th3 src

The first argument after the SQLITE_DBCONFIG_LOOKASIDE verb may be NULL in which case SQLite will allocate the lookaside buffer itself using sqlite3_malloc().

src/main.c:685   th3/req1/dbconfig01.test:42

/* IMP: R-61949-35727 */
# EVIDENCE-OF: R-61949-35727 The first argument after the
# SQLITE_DBCONFIG_LOOKASIDE verb may be NULL in which case SQLite will
# allocate the lookaside buffer itself using sqlite3_malloc().

R-47871-25994-62051-30257-22396-55190-62622-00222 tcl slt th3 src

The second argument is the size of each lookaside buffer slot.

src/main.c:804   th3/req1/dbconfig01.test:46

/* IMP: R-47871-25994 */
# EVIDENCE-OF: R-47871-25994 The second argument is the size of each
# lookaside buffer slot.

R-04460-53386-37328-50072-27408-53032-10915-39219 tcl slt th3 src

The third argument is the number of slots.

src/main.c:805   th3/req1/dbconfig01.test:49

/* IMP: R-04460-53386 */
# EVIDENCE-OF: R-04460-53386 The third argument is the number of slots.

R-33038-09382-52096-22256-12094-15064-07280-37767 tcl slt th3 src

If the second argument to SQLITE_DBCONFIG_LOOKASIDE is not a multiple of 8, it is internally rounded down to the next smaller multiple of 8.

src/main.c:677

/* IMP: R-33038-09382 */
# EVIDENCE-OF: R-33038-09382 If the second argument to
# SQLITE_DBCONFIG_LOOKASIDE is not a multiple of 8, it is internally
# rounded down to the next smaller multiple of 8.

R-53505-01828-44329-62678-22950-03794-01329-32376 tcl slt th3 src

The lookaside memory configuration for a database connection can only be changed when that connection is not currently using lookaside memory, or in other words when the "current value" returned by sqlite3_db_status(D,SQLITE_CONFIG_LOOKASIDE,...) is zero. Any attempt to change the lookaside memory configuration when lookaside memory is in use leaves the configuration unchanged and returns SQLITE_BUSY.

th3/req1/dbconfig01.test:102

/* IMP: R-53505-01828 */
# EVIDENCE-OF: R-53505-01828 The lookaside memory configuration for a
# database connection can only be changed when that connection is not
# currently using lookaside memory, or in other words when the "current
# value" returned by sqlite3_db_status(D,SQLITE_CONFIG_LOOKASIDE,...) is
# zero. Any attempt to change the lookaside memory configuration when
# lookaside memory is in use leaves the configuration unchanged and
# returns SQLITE_BUSY.

R-25136-65062-60246-57323-36202-59774-22241-57010 tcl slt th3 src

This option is used to enable or disable the enforcement of foreign key constraints.

th3/cov1/main34.test:12

/* IMP: R-25136-65062 */
# EVIDENCE-OF: R-25136-65062 This option is used to enable or disable
# the enforcement of foreign key constraints.

R-02005-53466-64191-45009-56070-04146-49679-01840 tcl slt th3 src

This option is used to enable or disable triggers.

th3/cov1/main34.test:15

/* IMP: R-02005-53466 */
# EVIDENCE-OF: R-02005-53466 This option is used to enable or disable
# triggers.

R-13380-27850-48182-47987-05437-06690-53655-55495 tcl slt th3 src

This option is used to enable or disable the two-argument version of the fts3_tokenizer() function which is part of the FTS3 full-text search engine extension.

/* IMP: R-13380-27850 */
# EVIDENCE-OF: R-13380-27850 This option is used to enable or disable
# the two-argument version of the fts3_tokenizer() function which is
# part of the FTS3 full-text search engine extension.

R-27882-15425-11851-57208-29860-19997-13242-33591 tcl slt th3 src

This option is used to enable or disable the sqlite3_load_extension() interface independently of the load_extension() SQL function.

/* IMP: R-27882-15425 */
# EVIDENCE-OF: R-27882-15425 This option is used to enable or disable
# the sqlite3_load_extension() interface independently of the
# load_extension() SQL function.

R-06824-28531-04860-08794-38432-46623-19840-41642 tcl slt th3 src

This option is used to change the name of the "main" database schema.

src/main.c:796   th3/cov1/maindbname01.test:22

/* IMP: R-06824-28531 */
# EVIDENCE-OF: R-06824-28531 This option is used to change the name of
# the "main" database schema.

R-34937-45675-11260-35059-56178-30979-30227-02001 tcl slt th3 src

The sole argument is a pointer to a constant UTF8 string which will become the new schema name in place of "main".

th3/cov1/maindbname01.test:25

/* IMP: R-34937-45675 */
# EVIDENCE-OF: R-34937-45675 The sole argument is a pointer to a
# constant UTF8 string which will become the new schema name in place of
# "main".

R-36257-52125-15338-28227-38982-51329-51201-58164 tcl slt th3 src

SQLite does not make a copy of the new main schema name string, so the application must ensure that the argument passed into this DBCONFIG option is unchanged until after the database connection closes.

src/main.c:797   th3/cov1/maindbname01.test:29

/* IMP: R-36257-52125 */
# EVIDENCE-OF: R-36257-52125 SQLite does not make a copy of the new main
# schema name string, so the application must ensure that the argument
# passed into this DBCONFIG option is unchanged until after the database
# connection closes.

R-40979-20331-65132-35120-47137-32709-07069-35596 tcl slt th3 src

The SQLITE_DBCONFIG_ENABLE_QPSG option activates or deactivates the query planner stability guarantee (QPSG). When the QPSG is active, a single SQL query statement will always use the same algorithm regardless of values of bound parameters.

th3/cov1/qpsg01.test:10   th3/cov1/qpsg02.test:11

/* IMP: R-40979-20331 */
# EVIDENCE-OF: R-40979-20331 The SQLITE_DBCONFIG_ENABLE_QPSG option
# activates or deactivates the query planner stability guarantee (QPSG).
# When the QPSG is active, a single SQL query statement will always use
# the same algorithm regardless of values of bound parameters.