doublechecking: no db-wide 'unicode switch' for sql server in the foreseeable future, i.e. like Orac
- by user72150
Hi all,
I believe I know the answer to this question, but wanted to confirm:
Question
Does Sql server (or will it in the foreseeable future), offer a database-wide "unicode switch" which says "store all characters in unicode (UTF-16, UCS-2, etc)", i.e. like Oracle.
The Context
Our application has provided "CJK" (Chinese-Japanese-Korean) support for years--using Oracle as the db store. Recently folks have been asking for the same support in sql server.
We store our db schema definition in xml and generate the vendor-specific definitions (oracle, sql server) using vendor-specific xsl. We can make the change easily.
The problem is for upgrades. Generated scripts would need to change the column types for 100+ columns from varchar to nvarchar, varchar(max) to nvarchar(max), etc. These changes require dropping and recreating indexes and foreign keys if the any indexes/fk's exist on the column. Non-trivial. Risky.
DB-wide character encodings for us would eliminate programming changes. (I.e. we would not to change the column types from varchar to nvarchar; sql server would correctly store unicode data in varchar columns).
I had thought that eventually sql server would "see the light" and allow storing unicode in varchar/clob columns. Evidently not yet.
Recap
So just to triple check: does mssql offer a database-wide switch for character encoding? Will it in SQL2008R3? or 2010?
thanks,
bill