From e85b07722107d00e4a3182ff4d33274a617bb55a Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 19 Nov 2014 11:51:17 +0200 Subject: Implement bulk API code generation --- odb/relational/mssql/context.cxx | 1 + odb/relational/mssql/header.cxx | 12 +++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'odb/relational/mssql') diff --git a/odb/relational/mssql/context.cxx b/odb/relational/mssql/context.cxx index a0037eb..e99cdaf 100644 --- a/odb/relational/mssql/context.cxx +++ b/odb/relational/mssql/context.cxx @@ -89,6 +89,7 @@ namespace relational insert_send_auto_id = false; delay_freeing_statement_result = true; need_image_clone = true; + generate_bulk = true; global_index = false; global_fkey = true; data_->bind_vector_ = "mssql::bind*"; diff --git a/odb/relational/mssql/header.cxx b/odb/relational/mssql/header.cxx index 40b6828..3bc2cbd 100644 --- a/odb/relational/mssql/header.cxx +++ b/odb/relational/mssql/header.cxx @@ -31,10 +31,16 @@ namespace relational if (poly_derived || (abst && !poly)) return; - // batch + // Bulk operations batch size. // - os << "static const std::size_t batch = 1UL;" - << endl; + { + unsigned long long b (c.count ("bulk") + ? c.get ("bulk") + : 1); + + os << "static const std::size_t batch = " << b << "UL;" + << endl; + } // rowvesion // -- cgit v1.1