13 #ifndef PQXX_H_DBTRANSACTION
14 #define PQXX_H_DBTRANSACTION
16 #include "pqxx/compiler-public.hxx"
17 #include "pqxx/compiler-internal-pre.hxx"
19 #include "pqxx/transaction_base.hxx"
70 const std::string &IsolationString,
80 void start_backend_transaction();
83 virtual void do_begin()
override;
85 virtual result do_exec(
const char Query[])
override;
87 virtual void do_commit()
override =0;
95 virtual void do_abort()
override;
97 static std::string fullname(
const std::string &ttype,
98 const std::string &isolation);
102 std::string m_start_cmd;
107 #include "pqxx/compiler-internal-post.hxx"
Private namespace for libpqxx's internal use; do not access.
Definition: connection_base.hxx:43
virtual ~dbtransaction()
Definition: dbtransaction.cxx:61
Result set containing data returned by a query or command.
Definition: result.hxx:69
virtual result do_exec(const char Query[]) override
Sensible default implemented here: perform query.
Definition: dbtransaction.cxx:74
@ read_only
Definition: dbtransaction.hxx:26
virtual void do_abort() override
Sensible default implemented here: abort backend transaction.
Definition: dbtransaction.cxx:88
readwrite_policy
Definition: dbtransaction.hxx:24
virtual void do_begin() override
Sensible default implemented here: begin backend transaction.
Definition: dbtransaction.cxx:66
static std::string fullname(const std::string &ttype, const std::string &isolation)
Definition: dbtransaction.cxx:95
Helper base class: object descriptions for error messages and such.
Definition: util.hxx:233
dbtransaction(connection_base &, const std::string &IsolationString, readwrite_policy rw=read_write)
Definition: dbtransaction.cxx:39
connection_base abstract base class; represents a connection to a database.
Definition: connection_base.hxx:139
Abstract base class responsible for bracketing a backend transaction.
Definition: dbtransaction.hxx:62
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
@ read_write
Definition: dbtransaction.hxx:27
Traits class to describe an isolation level; primarly for libpqxx's own use.
Definition: isolation.hxx:65