11 #ifndef PQXX_H_PREPARED_STATEMENT 12 #define PQXX_H_PREPARED_STATEMENT 14 #include "pqxx/compiler-public.hxx" 15 #include "pqxx/compiler-internal-pre.hxx" 17 #include "pqxx/types.hxx" 18 #include "pqxx/internal/statement_parameters.hxx" 43 template<
typename IT>
inline pqxx::internal::dynamic_params<IT>
46 return pqxx::internal::dynamic_params<IT>(begin, end);
66 inline pqxx::internal::dynamic_params<typename C::const_iterator>
69 return pqxx::internal::dynamic_params<typename C::const_iterator>(container);
81 class PQXX_LIBEXPORT
invocation : internal::statement_parameters
85 invocation &operator=(
const invocation &) =
delete;
101 { add_param(v,
true);
return *
this; }
108 { add_binary_param(v,
true);
return *
this; }
115 template<
typename T> invocation &
operator()(
const T &v,
bool nonnull)
116 { add_param(v, nonnull);
return *
this; }
124 { add_binary_param(v, nonnull);
return *
this; }
134 template<
typename T> invocation &
operator()(T *v,
bool nonnull=
true)
135 { add_param(v, nonnull);
return *
this; }
143 { add_param(v, nonnull);
return *
this; }
147 const std::string m_statement;
149 invocation &setparam(
const std::string &,
bool nonnull);
161 bool registered =
false;
171 #include "pqxx/compiler-internal-post.hxx" Helper class for passing parameters to, and executing, prepared statements.
Definition: prepared_statement.hxx:81
invocation & operator()(const T &v, bool nonnull)
Pass parameter value.
Definition: prepared_statement.hxx:115
Result set containing data returned by a query or command.
Definition: result.hxx:69
invocation & operator()(const T &v)
Pass parameter value.
Definition: prepared_statement.hxx:100
Interface definition (and common code) for "transaction" classes.
Definition: transaction_base.hxx:136
Binary data corresponding to PostgreSQL's "BYTEA" binary-string type.
Definition: binarystring.hxx:53
Internal representation of a prepared statement definition.
Definition: prepared_statement.hxx:156
invocation & operator()(const char *v, bool nonnull=true)
Pass C-style string parameter, or null if pointer is null.
Definition: prepared_statement.hxx:142
invocation & operator()(const binarystring &v, bool nonnull)
Pass binary parameter value for a BYTEA field.
Definition: prepared_statement.hxx:123
invocation & operator()(T *v, bool nonnull=true)
Pass C-style parameter string, or null if pointer is null.
Definition: prepared_statement.hxx:134
std::string definition
Text of prepared query.
Definition: prepared_statement.hxx:159
invocation & operator()(const binarystring &v)
Pass binary parameter value for a BYTEA field.
Definition: prepared_statement.hxx:107
invocation & operator()()
Pass null parameter.
Definition: prepared_statement.hxx:94
The home of all libpqxx classes, functions, templates, etc.
Definition: array.hxx:25
pqxx::internal::dynamic_params< IT > make_dynamic_params(IT begin, IT end)
Pass a number of statement parameters only known at runtime.
Definition: prepared_statement.hxx:44