我在 web.config 中有一个带有 SQL Server 2005 连接字符串的 ASP.Net Web 应用程序。
Data Source=ABCSERVER;Network Library=DBMSSOCN;Initial Catalog=myDataBase;
User ID=myUsername;Password=myPassword;
我想在 web.config 中为不同语言(如法语)指定排序规则属性
Data Source=ABCSERVER;Network Library=DBMSSOCN;Initial Catalog=myDataBase;
User ID=myUsername;Password=myPassword;Collation=French_CS_AS
但是整理 word 在连接字符串中无效。
我们需要用来指定 SQL Server 2005 连接字符串中的排序规则的正确关键字是什么?
编辑
我知道排序规则可以在数据库安装期间设置,也可以更改。我不想在数据库中永久更改它。但我希望 SQLClient 根据应用程序的设置来设置排序规则。
我只想在使用 SQL 查询时使用它
SELECT * FROM TESTTABLE ORDER BY TESTCOLUMN COLLATE French_CS_AS
我试图确保对于给定的连接,该连接的所有命令/查询都将自动使用
"French_CS_AS"
- 基于连接字符串中的属性设置,而不是更改查询定义
最佳答案
您不能为连接设置排序规则。它根本不受支持。见 SQL Server Native Client: Connection strings and OLE DB有关如何解析连接字符串的非常有趣的博客文章。
您可以为连接设置语言。设置连接语言会改变处理日期的方式,并导致以指定语言提供系统错误消息。见 Session Language有关设置语言的更多信息。
关于对来自 COLLATE (Transact-SQL) 的非 Unicode 类型使用排序规则的警告:
char 和 varchar 数据类型支持代码页转换,但文本数据类型不支持。不会报告代码页转换期间的数据丢失。
理想情况下,如果您希望从您的数据中获得一致的多语言支持,您应该使用 Unicode 数据类型(nvarchar 等)。您还应该看到 Collation and International Terminology有关这方面的更多信息,请参阅 MSDN 上的文章。它包含对一些非常有用的其他文章的引用,所以不要停在那里。
关于sql-server-2005 - 将连接字符串中的排序规则属性设置为 SQL Server 2005,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3065289/