29 #include <sqlitepp/sqlite3.h> 52 explicit Connection(
const std::string & filename);
82 void exec(
const std::string & sql,
int (*callback)(
void *,
int,
char **,
char **) =
nullptr,
83 void * arg =
nullptr);
142 const std::string & db_name =
"main");
156 sqlite3 * db_ =
nullptr;
182 Stmt & operator=(
const Stmt &) =
delete;
199 void bind(
const int index,
const double val);
202 void bind(
const int index,
const int val);
205 void bind(
const int index,
const sqlite3_int64 val);
208 void bind(
const int index,
const std::string & val);
211 void bind(
const int index,
const char * val);
219 void bind_null(
const int index);
222 void bind(
const int index);
230 void bind(
const std::string & name,
const double val);
233 void bind(
const std::string & name,
const int val);
236 void bind(
const std::string & name,
const sqlite3_int64 val);
239 void bind(
const std::string & name,
const std::string & val);
242 void bind(
const std::string & name,
const char * val);
249 void bind_null(
const std::string & name);
252 void bind(
const std::string & name);
262 std::string bind_parameter_name(
const int index);
270 int bind_parameter_index(
const std::string & name);
276 int bind_parameter_count();
296 T get_col(
const int column);
308 void clear_bindings();
334 sqlite3_stmt * stmt_ =
nullptr;
336 sqlite3 * db_ =
nullptr;
340 # endif // SQLITE_HPP
Sqlite C++ wrapper and associated types.
Definition: database.hpp:30
Prepared statement obj - usually created by Connection::create_statement.
Definition: sqlite.hpp:167
Sqlite database connection.
Definition: sqlite.hpp:42
void commit()
End a transaction & commit.
Definition: sqlite.cpp:89
void rollback()
End a transaction & rollback.
Definition: sqlite.cpp:94
void exec(const std::string &sql, int(*callback)(void *, int, char **, char **)=nullptr, void *arg=nullptr)
Execute SQL statement(s)
Definition: sqlite.cpp:67
sqlite3_int64 last_insert_rowid()
Get last INSERTed Row ID.
Definition: sqlite.cpp:104
void begin_transaction()
Start a transaction.
Definition: sqlite.cpp:84
int total_changes()
Get total number of rows modified.
Definition: sqlite.cpp:109
Connection(const std::string &filename)
Open / create new DB.
Definition: sqlite.cpp:29
Stmt create_statement(const std::string &sql)
Create a new prepared statement.
Definition: sqlite.cpp:62
const sqlite3 * get_c_obj() const
Get wrapped C sqlite3 object (for use with the sqlite C API)
Definition: sqlite.cpp:141
Column_metadata table_column_metadata(const std::string &table_name, const std::string &column_name, const std::string &db_name="main")
Get column metadata.
Definition: sqlite.cpp:114
void interrupt()
Interrupt a long-running query.
Definition: sqlite.cpp:99