00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "pqxx/connection_base"
00020 #include "pqxx/result"
00021 #include "pqxx/transaction_base"
00022
00023
00024
00025
00026
00027 namespace pqxx
00028 {
00029 class nontransaction;
00030
00032 template<> inline PGSTD::string Classname(const nontransaction *)
00033 {
00034 return "nontransaction";
00035 }
00036
00037
00038
00040
00061 class PQXX_LIBEXPORT nontransaction : public transaction_base
00062 {
00063 public:
00065
00070 explicit nontransaction(connection_base &C,
00071 const PGSTD::string &NName=PGSTD::string()) :
00072 transaction_base(C, NName) { Begin(); }
00073
00074 virtual ~nontransaction();
00075
00076 private:
00077 virtual void do_begin() {}
00078 virtual result do_exec(const char C[]);
00079 virtual void do_commit() {}
00080 virtual void do_abort() {}
00081 };
00082
00083
00084 }
00085
00086