aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2014-11-24 15:51:28 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2014-11-24 15:51:28 +0200
commit4233e9a4acfafdb5bb4a5a86d7a15ddbe17d330b (patch)
treee9f0d22285d7fc9ad814b75eac9d587c6d630995
parent8fceda2b30ecfa4458159e3c765e0aac7004f2f6 (diff)
Tie various loose endsbulk
-rw-r--r--odb/relational/mssql/source.cxx12
1 files changed, 11 insertions, 1 deletions
diff --git a/odb/relational/mssql/source.cxx b/odb/relational/mssql/source.cxx
index e40a189..ffcfa3c 100644
--- a/odb/relational/mssql/source.cxx
+++ b/odb/relational/mssql/source.cxx
@@ -920,7 +920,7 @@ namespace relational
sql_type::ROWVERSION)
return r;
- // Long data & SQL Server 2005 incompatibility is detected
+ // ROWVERSION & SQL Server 2005 incompatibility is detected
// in persist_statement_extra.
//
r = "OUTPUT INSERTED." +
@@ -1037,6 +1037,16 @@ namespace relational
throw operation_failed ();
}
+ // We also cannot support bulk INSERT.
+ //
+ if (c.count ("bulk-persist"))
+ {
+ error (c.location ()) << "in SQL Server 2005 bulk " <<
+ "persist operation cannot be implemented for a " <<
+ "persistent class containing long data" << endl;
+ throw operation_failed ();
+ }
+
r = "; SELECT " + convert_from ("SCOPE_IDENTITY()", *id);
}