13 #ifndef PQXX_H_ROBUSTTRANSACTION
14 #define PQXX_H_ROBUSTTRANSACTION
16 #if !defined(PQXX_HEADER_PRE)
17 # error "Include libpqxx headers as <pqxx/header>, not <pqxx/header.hxx>."
20 #include "pqxx/dbtransaction.hxx"
37 using IDType =
unsigned long;
39 std::string m_conn_string;
41 int m_backendpid = -1;
43 void init(
zview begin_command);
46 virtual void do_commit()
override;
81 template<isolation_level ISOLATION = read_committed>
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
Internal items for libpqxx' own use. Do not use these yourself.
Definition: composite.hxx:84
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 robusttransaction class template.
Definition: robusttransaction.hxx:27
virtual ~basic_robusttransaction() override=0
basic_robusttransaction(connection &c, zview begin_command, std::string_view tname)
Definition: robusttransaction.cxx:104
Slightly slower, better-fortified version of transaction.
Definition: robusttransaction.hxx:83
robusttransaction(connection &c, std::string_view tname)
Definition: robusttransaction.hxx:89
robusttransaction(connection &c)
Definition: robusttransaction.hxx:108
virtual ~robusttransaction() noexcept override
Definition: robusttransaction.hxx:113
robusttransaction(connection &c, std::string &&tname)
Definition: robusttransaction.hxx:99
void close() noexcept
End transaction. To be called by implementing class' destructor.
Definition: transaction_base.cxx:349
Marker-type wrapper: zero-terminated std::string_view.
Definition: zview.hxx:38