View Source Exqlite.Sqlite3NIF (Exqlite v0.28.0)

This is the module where all of the NIF entry points reside. Calling this directly should be avoided unless you are aware of what you are doing.

Summary

Types

db()

@type db() :: reference()

reason()

@type reason() :: :atom | String.Chars.t()

row()

@type row() :: list()

statement()

@type statement() :: reference()

Functions

bind_blob(stmt, index, blob)

@spec bind_blob(statement(), non_neg_integer(), binary()) :: :ok

bind_float(stmt, index, float)

@spec bind_float(statement(), non_neg_integer(), float()) :: :ok

bind_integer(stmt, index, integer)

@spec bind_integer(statement(), non_neg_integer(), integer()) :: :ok

bind_null(stmt, index)

@spec bind_null(statement(), non_neg_integer()) :: :ok

bind_parameter_count(stmt)

@spec bind_parameter_count(statement()) :: integer()

bind_text(stmt, index, text)

@spec bind_text(statement(), non_neg_integer(), String.t()) :: :ok

changes(conn)

@spec changes(db()) :: {:ok, integer()} | {:error, reason()}

close(conn)

@spec close(db()) :: :ok | {:error, reason()}

columns(conn, statement)

@spec columns(db(), statement()) :: {:ok, [binary()]} | {:error, reason()}

deserialize(conn, database, serialized)

@spec deserialize(db(), String.t(), binary()) :: :ok | {:error, reason()}

enable_load_extension(conn, flag)

@spec enable_load_extension(db(), integer()) :: :ok | {:error, reason()}

errmsg(db_or_stmt)

@spec errmsg(db() | statement()) :: String.t() | nil

errstr(rc)

@spec errstr(integer()) :: String.t()

execute(conn, sql)

@spec execute(db(), String.t()) :: :ok | {:error, reason()}

interrupt(conn)

@spec interrupt(db()) :: :ok | {:error, reason()}

last_insert_rowid(conn)

@spec last_insert_rowid(db()) :: {:ok, integer()}

load_nif()

multi_step(conn, statement, chunk_size)

@spec multi_step(db(), statement(), integer()) ::
  :busy | {:rows, [row()]} | {:done, [row()]} | {:error, reason()}

open(path, flags)

@spec open(String.t(), integer()) :: {:ok, db()} | {:error, reason()}

prepare(conn, sql)

@spec prepare(db(), String.t()) :: {:ok, statement()} | {:error, reason()}

release(conn, statement)

@spec release(db(), statement()) :: :ok | {:error, reason()}

reset(stmt)

@spec reset(statement()) :: :ok

serialize(conn, database)

@spec serialize(db(), String.t()) :: {:ok, binary()} | {:error, reason()}

set_log_hook(pid)

@spec set_log_hook(pid()) :: :ok | {:error, reason()}

set_update_hook(conn, pid)

@spec set_update_hook(db(), pid()) :: :ok | {:error, reason()}

step(conn, statement)

@spec step(db(), statement()) :: :done | :busy | {:row, row()} | {:error, reason()}

transaction_status(conn)

@spec transaction_status(db()) :: {:ok, :idle | :transaction}