diff options
author | Constantin Michael <constantin@codesynthesis.com> | 2011-05-19 17:08:03 +0200 |
---|---|---|
committer | Constantin Michael <constantin@codesynthesis.com> | 2011-05-19 17:08:03 +0200 |
commit | 0b762135ae0e28fcda69d58523364aa8bef9637a (patch) | |
tree | b20ec744a62638e1c248b9e100c373e75f3fcedc /odb/pgsql/statement.hxx | |
parent | e4e17881e64175352f1e1d8d0159039f7115a7a0 (diff) |
Add update_statement
Diffstat (limited to 'odb/pgsql/statement.hxx')
-rw-r--r-- | odb/pgsql/statement.hxx | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/odb/pgsql/statement.hxx b/odb/pgsql/statement.hxx index 88b1c14..17d4930 100644 --- a/odb/pgsql/statement.hxx +++ b/odb/pgsql/statement.hxx @@ -79,6 +79,35 @@ namespace odb Oid oid_; }; + class LIBODB_PGSQL_EXPORT update_statement: public statement + { + public: + virtual + ~update_statement (); + + // Asssumes that cond.values, cond.lengths, and cond.formats are + // suffixes of data.values, data.lengths, and data.formats + // respectively. + // + update_statement (connection& conn, + const std::string& name, + const std::string& stmt, + const Oid* types, + std::size_t n, + native_binding& cond, + native_binding& data); + void + execute (); + + private: + update_statement (const update_statement&); + update_statement& operator= (const update_statement&); + + private: + native_binding& cond_; + native_binding& data_; + }; + class LIBODB_PGSQL_EXPORT delete_statement: public statement { public: |