summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/database/column.hpp2
-rw-r--r--src/database/insert_query.hpp2
-rw-r--r--src/database/query.cpp9
-rw-r--r--src/database/query.hpp2
-rw-r--r--src/database/sqlite3_statement.hpp1
5 files changed, 13 insertions, 3 deletions
diff --git a/src/database/column.hpp b/src/database/column.hpp
index 1f16bcf..9367701 100644
--- a/src/database/column.hpp
+++ b/src/database/column.hpp
@@ -18,5 +18,5 @@ struct Id: Column<std::size_t> {
static constexpr auto name = "id_";
static constexpr auto options = "PRIMARY KEY";
- Id(): Column<std::size_t>(-1) {}
+ Id(): Column<std::size_t>(unset_value) {}
};
diff --git a/src/database/insert_query.hpp b/src/database/insert_query.hpp
index 9726424..04c098c 100644
--- a/src/database/insert_query.hpp
+++ b/src/database/insert_query.hpp
@@ -22,7 +22,7 @@ update_autoincrement_id(std::tuple<T...>& columns, Statement& statement)
template <std::size_t N=0, typename... T>
typename std::enable_if<N == sizeof...(T), void>::type
-update_autoincrement_id(std::tuple<T...>&, Statement& statement)
+update_autoincrement_id(std::tuple<T...>&, Statement&)
{}
struct InsertQuery: public Query
diff --git a/src/database/query.cpp b/src/database/query.cpp
index d27dc59..9611c97 100644
--- a/src/database/query.cpp
+++ b/src/database/query.cpp
@@ -21,6 +21,15 @@ void actual_bind(Statement& statement, const OptionalBool& value, int index)
statement.bind_int64(index, -1);
}
+void actual_bind(Statement& statement, const std::size_t value, int index)
+{
+ actual_bind(statement, static_cast<std::int64_t>(value), index);
+}
+
+void actual_bind(Statement& statement, const int value, int index)
+{
+ actual_bind(statement, static_cast<std::int64_t>(value), index);
+}
void actual_add_param(Query& query, const std::string& val)
{
diff --git a/src/database/query.hpp b/src/database/query.hpp
index 8434944..25c3a62 100644
--- a/src/database/query.hpp
+++ b/src/database/query.hpp
@@ -13,6 +13,8 @@
void actual_bind(Statement& statement, const std::string& value, int index);
void actual_bind(Statement& statement, const std::int64_t value, int index);
+void actual_bind(Statement& statement, const std::size_t value, int index);
+void actual_bind(Statement& statement, const int value, int index);
void actual_bind(Statement& statement, const OptionalBool& value, int index);
#ifdef DEBUG_SQL_QUERIES
diff --git a/src/database/sqlite3_statement.hpp b/src/database/sqlite3_statement.hpp
index 7738fa6..3ed60c0 100644
--- a/src/database/sqlite3_statement.hpp
+++ b/src/database/sqlite3_statement.hpp
@@ -88,5 +88,4 @@ class Sqlite3Statement: public Statement
private:
sqlite3_stmt* stmt;
- int last_step_result{SQLITE_OK};
};