doublechecking: no db-wide 'unicode switch' for sql server in the foreseeable future, i.e. like Orac
Posted
by user72150
on Stack Overflow
See other posts from Stack Overflow
or by user72150
Published on 2010-03-18T14:52:02Z
Indexed on
2010/03/18
16:01 UTC
Read the original article
Hit count: 472
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
© Stack Overflow or respective owner