ksql_exec
—
execute a standalone statement not returning any
values
library “ksql”
#include
<sys/types.h>
#include
<stdint.h>
#include
<ksql.h>
enum ksqlc
ksql_exec
(
struct
ksql *sql,
const char *stmt,
size_t id);
The
ksql_exec
function executes
stmt on an open database connection
sql. The
id
is used to identify the statement in error messages and should uniquely
identify the statement.
If a non-empty
cfg->stmts structure
documented in
ksql_cfg_defaults(3) is passed to
ksql_alloc(3) or
ksql_alloc_child(3), the stored statement is
looked up by
id and the
stmt value is ignored. If
id is not a valid index of
cfg->stmts.stmtsz, the program is
immediately terminated.
This function handles a locked database (specifically,
SQLITE_BUSY
,
SQLITE_LOCKED
, or
SQLITE_PROTOCOL
) by sleeping for a random
interval, then trying again infinitely.
This function returns
KSQL_NOTOPEN
if the
database connection has not been opeend,
KSQL_DB
on database errors, or
KSQL_OK
otherwise.
sqlite3_exec(3)