KSQL_BIND_DOUBLE(3) Library Functions Manual KSQL_BIND_DOUBLE(3)

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.
December 28, 2018 OpenBSD 6.4