Signed-off-by: Steven Noonan <steven@uplinklabs.net>
BRNCEZ34ZB6CSZZWSWTHJTRFWRTXNX734RI27RMAUB6LP6HBYJNQC ** added to the Schema structure and the Schema.db variable populated,** only that database connection may use the Schema to prepare
** added to the Schema structure and the Schema.db variable populated,** only that database connection may use the Schema to prepare
/* FILETIME structure is a 64-bit value representing the number of100-nanosecond intervals since January 1, 1601 (= JD 2305813.5).
/* FILETIME structure is a 64-bit value representing the number of100-nanosecond intervals since January 1, 1601 (= JD 2305813.5).
/* The trunk has no leaves and the list is not being searched.** So extract the trunk page itself and use it as the newly
/* The trunk has no leaves and the list is not being searched.** So extract the trunk page itself and use it as the newly
** then there is no divider cell in apCell[]. Instead, the divider** cell consists of the integer key for the right-most cell of
** then there is no divider cell in apCell[]. Instead, the divider** cell consists of the integer key for the right-most cell of
** Just before the shared-btree is closed, the function passed as the** xFree argument when the memory allocation was made is invoked on the
** Just before the shared-btree is closed, the function passed as the** xFree argument when the memory allocation was made is invoked on the
** Variable *pMaxFuncArgs is set to the maximum value of any P2 argument** to an OP_Function, OP_AggStep or OP_VFilter opcode. This is used by
** Variable *pMaxFuncArgs is set to the maximum value of any P2 argument** to an OP_Function, OP_AggStep or OP_VFilter opcode. This is used by
** (b) how many database files have open write transactions, not** including the temp database. (b) is important because if more than
** (b) how many database files have open write transactions, not** including the temp database. (b) is important because if more than
** ALTER TABLE command. The first argument is the text of a CREATE TRIGGER** statement. The second is a table name. The table name in the CREATE** TRIGGER statement is replaced with the third argument and the result
** ALTER TABLE command. The first argument is the text of a CREATE TRIGGER** statement. The second is a table name. The table name in the CREATE** TRIGGER statement is replaced with the third argument and the result
/* Now, if the table is not stored in the temp database, reload any temp** triggers. Don't use IN(...) in case SQLITE_OMIT_SUBQUERY is defined.
/* Now, if the table is not stored in the temp database, reload any temp** triggers. Don't use IN(...) in case SQLITE_OMIT_SUBQUERY is defined.
** is parsed (i.e. sqlite3AddColumn()) add the new Column data to** the copy. The copy of the Table structure is deleted by tokenize.c
** is parsed (i.e. sqlite3AddColumn()) add the new Column data to** the copy. The copy of the Table structure is deleted by tokenize.c
/* Once all the cookies have been verified and transactions opened,** obtain the required table-locks. This is a no-op unless the
/* Once all the cookies have been verified and transactions opened,** obtain the required table-locks. This is a no-op unless the
** more than one of the substrings, entries toward the top of** the table take priority. For example, if zType is 'BLOBINT',
** more than one of the substrings, entries toward the top of** the table take priority. For example, if zType is 'BLOBINT',
** Create a new index for an SQL table. pName1.pName2 is the name of the index** and pTblList is the name of the table that is to be indexed. Both will
** Create a new index for an SQL table. pName1.pName2 is the name of the index** and pTblList is the name of the table that is to be indexed. Both will
** The db->init.busy is 0 when the user first enters a CREATE INDEX** command. db->init.busy is 1 when a database is opened and
** The db->init.busy is 0 when the user first enters a CREATE INDEX** command. db->init.busy is 1 when a database is opened and
** keywords. Or NULL if those keywords are omitted. iLimit and iOffset** are the integer memory register numbers for counters used to compute** the limit and offset. If there is no limit and/or offset, then
** keywords. Or NULL if those keywords are omitted. iLimit and iOffset** are the integer memory register numbers for counters used to compute** the limit and offset. If there is no limit and/or offset, then
/* If the module has been registered and includes a Create method,** invoke it now. If the module has not been registered, return an
/* If the module has been registered and includes a Create method,** invoke it now. If the module has not been registered, return an
** The VDBE cursor numbers are small integers contained in** SrcList_item.iCursor and Expr.iTable fields. For any given WHERE
** The VDBE cursor numbers are small integers contained in** SrcList_item.iCursor and Expr.iTable fields. For any given WHERE
static const char *const yyTokenName[] = {"$", "SEMI", "EXPLAIN", "QUERY","PLAN", "BEGIN", "TRANSACTION", "DEFERRED","IMMEDIATE", "EXCLUSIVE", "COMMIT", "END",
static const char *const yyTokenName[] = {"$", "SEMI", "EXPLAIN", "QUERY","PLAN", "BEGIN", "TRANSACTION", "DEFERRED","IMMEDIATE", "EXCLUSIVE", "COMMIT", "END",