12 #ifndef PQXX_H_TRANSACTION
13 #define PQXX_H_TRANSACTION
15 #if !defined(PQXX_HEADER_PRE)
16 # error "Include libpqxx headers as <pqxx/header>, not <pqxx/header.hxx>."
19 #include "pqxx/dbtransaction.hxx"
35 virtual
void do_commit() override;
81 internal::basic_transaction{
82 c, internal::
begin_cmd<ISOLATION, READWRITE>, tname}
91 internal::basic_transaction{
92 c, internal::
begin_cmd<ISOLATION, READWRITE>}
The home of all libpqxx classes, functions, templates, etc.
Definition: array.hxx:33
write_policy
Should a transaction be read-only, or read-write?
Definition: isolation.hxx:27
isolation_level
Transaction isolation levels.
Definition: isolation.hxx:66
Internal items for libpqxx' own use. Do not use these yourself.
Definition: composite.hxx:84
const zview begin_cmd
The SQL command for starting a given type of transaction.
Connection to a database.
Definition: connection.hxx:233
Abstract transaction base class: bracket transactions on the database.
Definition: dbtransaction.hxx:54
Helper base class for the transaction class template.
Definition: transaction.hxx:25
virtual ~basic_transaction() noexcept override=0
Standard back-end transaction, templatised on isolation level.
Definition: transaction.hxx:72
virtual ~transaction() noexcept override
Definition: transaction.hxx:95
transaction(connection &c, std::string_view tname)
Begin a transaction.
Definition: transaction.hxx:80
transaction(connection &c)
Begin a transaction.
Definition: transaction.hxx:90
Marker-type wrapper: zero-terminated std::string_view.
Definition: zview.hxx:38