Lines Matching full:sql
168 ** See also: SQL functions [sqlite_compileoption_used()] and
304 ** that allows an application to run multiple statements of SQL
308 ** semicolon-separate SQL statements passed into its 2nd argument,
312 ** coming out of the evaluated SQL statements. ^The 4th argument to
318 ** ^If an error occurs while evaluating the SQL statements passed into
332 ** without running any subsequent SQL statements.
346 ** SQL comments, then no SQL statements are evaluated and the database
356 ** <li> The application must not modify the SQL statement text passed into
362 const char *sql, /* SQL to be evaluated */
382 #define SQLITE_ERROR 1 /* SQL error or missing database */
1500 ** This function is accessible to SQL statements via the
1501 ** [last_insert_rowid() SQL function].
1516 ** or inserted or deleted by the most recently completed SQL statement
1535 ** Most SQL statements are
1558 ** [count_changes pragma], and the [changes() SQL function].
1584 ** [count_changes pragma], and the [total_changes() SQL function].
1606 ** ^If an SQL operation is very nearly finished at the time when
1610 ** ^An SQL operation that is interrupted will return [SQLITE_INTERRUPT].
1611 ** ^If the interrupted SQL operation is an INSERT, UPDATE, or DELETE
1616 ** SQL statements on [database connection] D complete. ^Any new SQL statements
1619 ** running prior to the sqlite3_interrupt() call. ^New SQL statements
1623 ** SQL statements is a no-op and has no effect on SQL statements
1632 ** CAPI3REF: Determine If An SQL Statement Is Complete
1635 ** currently entered text seems to form a complete SQL statement or
1638 ** appears to be a complete SQL statement. ^A statement is judged to be
1649 ** ^These routines do not parse the SQL statements thus
1650 ** will not detect syntactically incorrect SQL.
1656 ** regardless of whether or not the input SQL is complete.)^
1664 SQLITE_API int sqlite3_complete(const char *sql);
1665 SQLITE_API int sqlite3_complete16(const void *sql);
1806 ** semicolon-separated SQL statements in the zero-terminated UTF-8
1827 const char *zSql, /* SQL to be evaluated */
1868 ** options that are useful for constructing SQL statements.
1884 ** One can use this text in an SQL statement as follows:
1893 ** is escaped and the SQL generated is as follows:
1899 ** This is correct. Had we used %s instead of %q, the generated SQL
1906 ** This second example is an SQL syntax error. As a general rule you should
1920 ** The code above will render a correct SQL statement in the zSQL
2037 ** the build-in random() and randomblob() SQL functions. This interface allows
2056 ** ^The authorizer callback is invoked as SQL statements are being compiled
2063 ** specific action but allow the SQL statement to continue to be
2064 ** compiled, or [SQLITE_DENY] to cause the entire SQL statement to be
2095 ** SQL statements from an untrusted source, to ensure that the SQL statements
2099 ** SQL queries for evaluation by a database. But the application does
2102 ** user-entered SQL is being [sqlite3_prepare | prepared] that
2105 ** Applications that need to process SQL from untrusted sources
2146 #define SQLITE_DENY 1 /* Abort the SQL statement with an error */
2153 ** that is invoked to authorize certain SQL statement actions. The
2166 ** top-level SQL code.
2207 ** tracing and profiling the execution of SQL statements.
2210 ** various times when an SQL statement is being run by [sqlite3_step()].
2212 ** SQL statement text as the statement first begins executing.
2215 ** contain a UTF-8 SQL comment that identifies the trigger.)^
2218 ** as each SQL statement finishes. ^The profile callback contains
2407 ** CAPI3REF: SQL Statement Object
2410 ** An instance of this object represents a single SQL statement.
2412 ** "compiled SQL statement" or simply as a "statement".
2421 ** <li> Run the SQL by calling [sqlite3_step()] one or more times.
2465 ** interface to further control untrusted SQL. The size of the database
2487 ** <dd>The maximum length of an SQL statement, in bytes.</dd>)^
2502 ** used to implement an SQL statement. This limit is not currently
2517 ** <dd>The maximum index number of any [parameter] in an SQL statement.)^
2536 ** CAPI3REF: Compiling An SQL Statement
2537 ** KEYWORDS: {SQL statement compiler}
2539 ** To execute an SQL query, it must first be compiled into a byte-code
2562 ** past the end of the first SQL statement in zSql. These routines only
2568 ** to NULL. ^If the input text contains no SQL (if the input is an empty
2571 ** SQL statement using [sqlite3_finalize()] after it has finished with it.
2582 ** original SQL text. This causes the [sqlite3_step()] interface to
2588 ** always used to do, [sqlite3_step()] will automatically recompile the SQL
2617 const char *zSql, /* SQL statement, UTF-8 encoded */
2624 const char *zSql, /* SQL statement, UTF-8 encoded */
2631 const void *zSql, /* SQL statement, UTF-16 encoded */
2638 const void *zSql, /* SQL statement, UTF-16 encoded */
2645 ** CAPI3REF: Retrieving Statement SQL
2648 ** SQL text used to create a [prepared statement] if that statement was
2654 ** CAPI3REF: Determine If An SQL Statement Writes The Database
2696 ** implementation of [application-defined SQL functions] are protected.
2707 ** CAPI3REF: SQL Function Context Object
2709 ** The context in which an SQL function executes is stored in an
2711 ** is always first parameter to [application-defined SQL functions].
2712 ** The application-defined SQL function implementation will pass this
2723 ** KEYWORDS: {SQL parameter} {SQL parameters} {parameter binding}
2725 ** ^(In the SQL statement text input to [sqlite3_prepare_v2()] and its variants,
2739 ** parameters (also called "host parameter names" or "SQL parameters")
2746 ** ^The second argument is the index of the SQL parameter to be set.
2747 ** ^The leftmost SQL parameter has an index of 1. ^When the same named
2748 ** SQL parameter is used more than once, second and subsequent
2813 ** CAPI3REF: Number Of SQL Parameters
2815 ** ^This routine can be used to find the number of [SQL parameters]
2816 ** in a [prepared statement]. SQL parameters are tokens of the
2836 ** the name of the N-th [SQL parameter] in the [prepared statement] P.
2837 ** ^(SQL parameters of the form "?NNN" or ":AAA" or "@AAA" or "$AAA"
2862 ** ^Return the index of an SQL parameter given its name. ^The
2888 ** [prepared statement]. ^This routine returns 0 if pStmt is an SQL
3005 ** CAPI3REF: Evaluate An SQL Statement
3036 ** ^If the SQL statement being executed returns any data, then [SQLITE_ROW]
3071 ** with the "v2" interface. If you prepare all of your SQL statements
3140 ** If the SQL statement does not currently point to a valid row, or if the
3330 ** ^Any SQL statement variables that had values bound to them using
3352 ** CAPI3REF: Create Or Redefine SQL Functions
3354 ** KEYWORDS: {application-defined SQL function}
3355 ** KEYWORDS: {application-defined SQL functions}
3358 ** are used to add SQL functions or aggregates or to redefine the behavior
3359 ** of existing SQL functions or aggregates. The only differences between
3365 ** ^The first parameter is the [database connection] to which the SQL
3367 ** connection then application-defined SQL functions must be added
3370 ** ^The second parameter is the name of the SQL function to be created or
3378 ** is the number of arguments that the SQL function or
3379 ** aggregate takes. ^If this parameter is -1, then the SQL function or
3386 ** [SQLITE_UTF8 | text encoding] this SQL function prefers for
3387 ** its parameters. Every SQL function implementation must be able to work
3401 ** pointers to C-language functions that implement the SQL function or
3402 ** aggregate. ^A scalar SQL function requires an implementation of the xFunc
3404 ** parameters. ^An aggregate SQL function requires an implementation of xStep
3406 ** SQL function or aggregate, pass NULL poiners for all three function
3423 ** SQL function is used. ^A function implementation with a non-negative
3504 ** CAPI3REF: Obtaining SQL Function Parameter Values
3506 ** The C-language implementation of SQL functions and aggregates uses
3512 ** define callbacks that implement the SQL functions and aggregates.
3515 ** each parameter to the SQL function. These routines are used to
3546 ** the SQL function that supplied the [sqlite3_value*] parameters.
3564 ** Implementations of aggregate SQL functions use this
3593 ** [sqlite3_context | SQL function context] that is the first parameter
3598 ** the aggregate SQL function is running.
3630 ** The following two functions may be used by scalar SQL functions to
3632 ** multiple invocations of the same SQL function during query execution, under
3636 ** metadata associated with the SQL value passed as the regular expression
3656 ** or when the SQL statement completes, whichever comes first.
3667 ** the SQL function is running.
3692 ** CAPI3REF: Setting The Result Of An SQL Function
3695 ** implement SQL functions and aggregates. See
3701 ** Refer to the [SQL parameter] documentation for additional information.
3717 ** cause the implemented SQL function to throw an exception.
4399 ** See also the [load_extension() SQL function].
4413 ** extension loading while evaluating user-entered SQL, the following API
4808 ** interface. Use the [UPDATE] SQL command to change the size of a
4812 ** and the built-in [zeroblob] SQL function can be used, if desired,
5262 ** databases that are added using the [ATTACH] SQL command.
6094 ** virtual tables, collating functions, and SQL functions. While there is
6166 ** from SQL.
6185 ** from SQL. ^The [sqlite3_wal_autocheckpoint()] interface and the
6248 double *aParam; /* Parameters passed to SQL geom function */