aboutsummaryrefslogtreecommitdiff
path: root/odb
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2012-01-12 14:20:58 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2012-01-20 15:43:46 +0200
commited9c3239f4a795cd5778a4f76788b9980177b846 (patch)
tree3135a007840707f7a35700f39e8e79f9fd9ad061 /odb
parent557d156ec9c45ed105f7213e1748dc4aad78ebb2 (diff)
Change short data max and default string sizes for SQL Server
Now the default short data max is 1024, non-key string size is 512 characters, and key string size is 256 characters. Also add default mapping for std::wstring.
Diffstat (limited to 'odb')
-rw-r--r--odb/options.cli8
-rw-r--r--odb/relational/mssql/context.cxx3
2 files changed, 6 insertions, 5 deletions
diff --git a/odb/options.cli b/odb/options.cli
index ce7f837..4287231 100644
--- a/odb/options.cli
+++ b/odb/options.cli
@@ -430,7 +430,7 @@ class options
// SQL Server-specific options.
//
- unsigned int --mssql-short-limit = 900
+ unsigned int --mssql-short-limit = 1024
{
"<size>",
"Specify the short data size limit. If character, national character,
@@ -443,9 +443,9 @@ class options
in chunks using the \cb{SQLGetData()}/\cb{SQLPutData()} ODBC functions.
While the long data approach reduces the amount of memory used by the
application, it may require greater CPU resources. The default short
- data limit is 900 bytes. When setting a custom short data limit make
- sure that it is sufficiently large so that no character object id
- in the application is treated as long data."
+ data limit is 1024 bytes. When setting a custom short data limit make
+ sure that it is sufficiently large so that no character object id in
+ the application is treated as long data."
};
//
diff --git a/odb/relational/mssql/context.cxx b/odb/relational/mssql/context.cxx
index c9ff6f5..7832c24 100644
--- a/odb/relational/mssql/context.cxx
+++ b/odb/relational/mssql/context.cxx
@@ -49,7 +49,8 @@ namespace relational
{"float", "REAL", 0},
{"double", "FLOAT", 0},
- {"::std::string", "VARCHAR(8000)", "VARCHAR(900)"},
+ {"::std::string", "VARCHAR(512)", "VARCHAR(256)"},
+ {"::std::wstring", "NVARCHAR(512)", "NVARCHAR(256)"},
{"::size_t", "BIGINT", 0},
{"::std::size_t", "BIGINT", 0},