diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2014-08-14 09:37:06 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2014-11-25 06:46:33 +0200 |
commit | 239c24da194d98e0823642d408d35fc8fe3e7ae9 (patch) | |
tree | 153657a311112fe716a5e0312c97767cd10becca /odb/mssql/database.ixx | |
parent | 94f3cb74b800ab25394b22e91b3ece764fb55bb7 (diff) |
Implement bulk database operation support for Oracle and SQL Server
Diffstat (limited to 'odb/mssql/database.ixx')
-rw-r--r-- | odb/mssql/database.ixx | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/odb/mssql/database.ixx b/odb/mssql/database.ixx index 93919f6..fc43934 100644 --- a/odb/mssql/database.ixx +++ b/odb/mssql/database.ixx @@ -27,6 +27,13 @@ namespace odb template <typename T> inline typename object_traits<T>::id_type database:: + persist (const T& obj) + { + return persist_<const T, id_mssql> (obj); + } + + template <typename T> + inline typename object_traits<T>::id_type database:: persist (T* p) { typedef typename object_traits<T>::pointer_type object_pointer; @@ -93,6 +100,13 @@ namespace odb return persist_<T, id_mssql> (pobj); } + template <typename I> + inline void database:: + persist (I b, I e, bool cont) + { + persist_<I, id_mssql> (b, e, cont); + } + template <typename T> inline typename object_traits<T>::pointer_type database:: load (const typename object_traits<T>::id_type& id) @@ -254,6 +268,13 @@ namespace odb update_<T, id_mssql> (pobj); } + template <typename I> + inline void database:: + update (I b, I e, bool cont) + { + update_<I, id_mssql> (b, e, cont); + } + template <typename T> inline void database:: update (const T& obj, const section& s) @@ -343,6 +364,20 @@ namespace odb erase_<T, id_mssql> (pobj); } + template <typename T, typename I> + inline void database:: + erase (I idb, I ide, bool cont) + { + erase_id_<I, T, id_mssql> (idb, ide, cont); + } + + template <typename I> + inline void database:: + erase (I ob, I oe, bool cont) + { + erase_object_<I, id_mssql> (ob, oe, cont); + } + template <typename T> inline unsigned long long database:: erase_query () |