ksql_bind_blob,
ksql_bind_double,
ksql_bind_int,
ksql_bind_null,
ksql_bind_str,
ksql_bind_zblob —
bind values to a prepared statement
library “ksql”
#include
<sys/types.h>
#include
<stdint.h>
#include
<ksql.h>
enum ksqlc
ksql_bind_blob(
struct
ksqlstmt *stmt,
size_t column,
const void *val,
size_t valsz);
enum ksqlc
ksql_bind_double(
struct
ksqlstmt *stmt,
size_t column,
double val);
enum ksqlc
ksql_bind_int(
struct
ksqlstmt *stmt,
size_t column,
int64_t val);
enum ksqlc
ksql_bind_null(
struct
ksqlstmt *stmt,
size_t column);
enum ksqlc
ksql_bind_str(
struct
ksqlstmt *stmt,
size_t column,
const char *val);
enum ksqlc
ksql_bind_zblob(
struct
ksqlstmt *stmt,
size_t column,
size_t valsz);
These functions bind data to a statement prepared with
ksql_stmt_alloc(3). They all accept the relevant
column to bind, which starts at zero.
In
ksql_bind_blob and
ksql_bind_str, the contents are internally
copied.
These functions return
KSQL_BINDCOL if the
requested
column is not associated with a
statement parameter,
KSQL_DB if the
underlying bind operation fails, or
KSQL_OK
on success.
sqlite3_bind_blob(3)
In SQLite, binding occurs starting at column one. In these functions, for
consistency with
ksql_stmt_double(3) and friends,
it starts at zero.