diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-29 14:43:47 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-29 14:43:47 +0200 |
commit | 83aede3c9e27a8370c71dbde3549905c60524702 (patch) | |
tree | f6e9f617a1e9183b67e6597d1a5179db6ac874c1 /odb/sqlite/database.cxx | |
parent | 2fe2c22fa340e4854a69a1c17d94f8e58ba68ad4 (diff) |
Add support for starting immediate and exclusive transactions
Diffstat (limited to 'odb/sqlite/database.cxx')
-rw-r--r-- | odb/sqlite/database.cxx | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/odb/sqlite/database.cxx b/odb/sqlite/database.cxx index 176c392..912ec97 100644 --- a/odb/sqlite/database.cxx +++ b/odb/sqlite/database.cxx @@ -97,7 +97,25 @@ namespace odb if (transaction::has_current ()) throw already_in_transaction (); - return new transaction_impl (*this); + return new transaction_impl (*this, transaction_impl::deferred); + } + + transaction_impl* database:: + begin_immediate () + { + if (transaction::has_current ()) + throw already_in_transaction (); + + return new transaction_impl (*this, transaction_impl::immediate); + } + + transaction_impl* database:: + begin_exclusive () + { + if (transaction::has_current ()) + throw already_in_transaction (); + + return new transaction_impl (*this, transaction_impl::exclusive); } } } |