implemented prepared statement for postgres and sqlite
This commit is contained in:
+13
-13
@@ -3,21 +3,21 @@
|
||||
namespace matador::sql {
|
||||
|
||||
condition<column, placeholder, std::enable_if<true>::type>::condition(const column &fld, basic_condition::operand_t op, const placeholder &val)
|
||||
: basic_column_condition(fld, op)
|
||||
, value(val)
|
||||
{ }
|
||||
|
||||
std::string condition<column, placeholder, std::enable_if<true>::type>::evaluate(dialect &d) const {
|
||||
d.add_host_var(field_.name());
|
||||
return d.prepare_identifier(field_.name()) + " " + operand + " " + d.next_placeholder();
|
||||
}
|
||||
|
||||
condition<column, query>::condition(column col, basic_condition::operand_t op, query &q)
|
||||
: basic_column_condition(std::move(col), op)
|
||||
, query_(q)
|
||||
: basic_column_condition(fld, op), value(val)
|
||||
{}
|
||||
|
||||
std::string condition<column, query>::evaluate(dialect &d) const {
|
||||
std::string condition<column, placeholder, std::enable_if<true>::type>::evaluate(dialect &d, query_context &query) const
|
||||
{
|
||||
query.bind_vars.emplace_back(field_.name());
|
||||
return d.prepare_identifier(field_.name()) + " " + operand + " " + d.next_placeholder(query.bind_vars);
|
||||
}
|
||||
|
||||
condition<column, query_context>::condition(column col, basic_condition::operand_t op, query_context &q)
|
||||
: basic_column_condition(std::move(col), op), query_(q)
|
||||
{}
|
||||
|
||||
std::string condition<column, query_context>::evaluate(dialect &d, query_context &query) const
|
||||
{
|
||||
std::string result(d.prepare_identifier(field_.name()) + " " + operand + " (");
|
||||
result += (")");
|
||||
return result;
|
||||
|
||||
Reference in New Issue
Block a user