From ed9c3239f4a795cd5778a4f76788b9980177b846 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 12 Jan 2012 14:20:58 +0200 Subject: 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. --- odb/options.cli | 8 ++++---- odb/relational/mssql/context.cxx | 3 ++- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'odb') 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 { "", "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}, -- cgit v1.1