summaryrefslogtreecommitdiff
path: root/lib/dbConn.cpp
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2021-06-13 21:29:25 +0100
committerDan Goodliffe <dan@randomdan.homeip.net>2021-06-13 21:29:25 +0100
commit3bc5964793f1700551b7db8107a939c98f1d1be1 (patch)
tree38c77c4e49d54a348e5cdeb402bdd63f2e29d477 /lib/dbConn.cpp
parentAdd operator* to RecordSet, shorthand for getting scalar from 0,0 (diff)
downloadmygrate-3bc5964793f1700551b7db8107a939c98f1d1be1.tar.bz2
mygrate-3bc5964793f1700551b7db8107a939c98f1d1be1.tar.xz
mygrate-3bc5964793f1700551b7db8107a939c98f1d1be1.zip
Add transaction support
Diffstat (limited to 'lib/dbConn.cpp')
-rw-r--r--lib/dbConn.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/dbConn.cpp b/lib/dbConn.cpp
new file mode 100644
index 0000000..380910a
--- /dev/null
+++ b/lib/dbConn.cpp
@@ -0,0 +1,18 @@
+#include "dbConn.h"
+
+namespace MyGrate {
+ Tx::Tx(DbConn * c) : conn {c}
+ {
+ conn->beginTx();
+ }
+
+ Tx::~Tx()
+ {
+ if (std::uncaught_exceptions()) {
+ conn->rollbackTx();
+ }
+ else {
+ conn->commitTx();
+ }
+ }
+}