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
101 { add_param(v,
true);
return *
this; }
108 { add_binary_param(v,
true);
return *
this; }
116 { add_param(v, nonnull);
return *
this; }
124 { add_binary_param(v, nonnull);
return *
this; }
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"
invocation & operator()()
Pass null parameter.
Definition: prepared_statement.hxx:94
Private namespace for libpqxx's internal use; do not access.
Definition: connection_base.hxx:43
Result set containing data returned by a query or command.
Definition: result.hxx:69
Helper class for passing parameters to, and executing, prepared statements.
Definition: prepared_statement.hxx:81
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
result exec() const
Execute!
Definition: prepared_statement.cxx:34
invocation & operator()(const binarystring &v, bool nonnull)
Pass binary parameter value for a BYTEA field.
Definition: prepared_statement.hxx:123
invocation & operator()(const T &v)
Pass parameter value.
Definition: prepared_statement.hxx:100
invocation(transaction_base &, const std::string &statement)
Definition: prepared_statement.cxx:25
std::string definition
Text of prepared query.
Definition: prepared_statement.hxx:159
Binary data corresponding to PostgreSQL's "BYTEA" binary-string type.
Definition: binarystring.hxx:53
bool exists() const
Has a statement of this name been defined?
Definition: prepared_statement.cxx:50
invocation & operator()(T *v, bool nonnull=true)
Pass C-style parameter string, or null if pointer is null.
Definition: prepared_statement.hxx:134
invocation & operator()(const binarystring &v)
Pass binary parameter value for a BYTEA field.
Definition: prepared_statement.hxx:107
invocation & operator()(const T &v, bool nonnull)
Pass parameter value.
Definition: prepared_statement.hxx:115
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
Interface definition (and common code) for "transaction" classes.
Definition: transaction_base.hxx:136
The home of all libpqxx classes, functions, templates, etc.
Definition: array.hxx:25