implemented prepared statement for postgres and sqlite

This commit is contained in:
2023-12-09 11:08:03 +01:00
parent 8ba70cc79e
commit da423ea8bb
59 changed files with 1769 additions and 314 deletions
+12 -2
View File
@@ -18,6 +18,11 @@ std::unique_ptr<query_result_impl> query_select_finish::fetch()
return session_.fetch(builder_.compile().sql);
}
statement query_select_finish::prepare()
{
return session_.prepare(builder_.compile());
}
query_intermediate::query_intermediate(session &db, query_builder &query)
: session_(db), builder_(query) {}
@@ -103,6 +108,11 @@ std::pair<size_t, std::string> query_execute_finish::execute()
return session_.execute(builder_.compile().sql);
}
statement query_execute_finish::prepare()
{
return session_.prepare(builder_.compile());
}
query_execute_finish query_into_intermediate::values(std::initializer_list<any_type> values)
{
return {session_, builder_.values(values)};
@@ -140,10 +150,10 @@ query_execute_where_intermediate query_set_intermediate::where(const basic_condi
return {session_, builder_.where(cond)};
}
query_update_intermediate::query_update_intermediate(session &s, std::string table_name)
query_update_intermediate::query_update_intermediate(session &s, const std::string& table_name)
: query_start_intermediate(s)
{
builder_.update(std::move(table_name));
builder_.update(table_name);
}
query_set_intermediate query_update_intermediate::set(std::initializer_list<key_value_pair> columns)