2010-01-06 65 views
5

如何设置SQL Server 2005 DBMS,以便可以用不同语言存储数据?SQL Server多语言数据支持

我确切的问题是这样的:在SQL Server管理工作室我正在写一个包含德语变音的插入语句。文本已成功保存,但读取相同的值会导致文本没有变音。

想想我必须支持4种语言:英语,德语,希腊语&俄语(我不想考虑我将面对的俄文文本)。

数据库管理系统现在安装了希腊语整理(支持希腊语)。

这是否会导致任何问题?

任何提示?

回答

5

您需要对于字符串使用nvarchar数据类型(http://msdn.microsoft.com/en-us/library/ms186939.aspx),并且还需要在所有Unicode字符串前加上N(http://support.microsoft.com/kb/239530)。

在处理SQL Server中的Unicode字符串常量时,必须在所有Unicode字符串之前加上大写字母N,如SQL Server联机丛书主题“使用Unicode数据”中所述。 “N”前缀代表SQL-92标准中的国家语言,并且必须是大写字母。如果您不用N前缀Unicode字符串常量,SQL Server会在使用该字符串之前将其转换为当前数据库的非Unicode代码页。

2

你使用nvarchar类型(而不是varchar)?如果您在同一列中有多个lang,将会被推荐。这将让你存储和正确检索。

当然

,SQL服务器只能在特定的列维护一个排序规则类型,即使列被用于在多语言存储字符串,所以这是要考虑的事情......