使用不同的SQL Server 2008排序规则进行测试

时间:2011-10-27 09:55:46

标签: sql sql-server sql-server-2008 collation

目前我正在创建一个T-SQL脚本来验证某个数据库中的数据。此脚本验证了许多NVARCHAR列以检测数据问题。

由于此脚本必须在1000多个数据库上运行,因此我遇到了不同服务器和附加数据库的排序规则设置问题。

在生产环境中的计算机上运行脚本之前,我无法在开发板上更改数据库和服务器的排序规则以进行测试。

  • 是否正确无法更改服务器和数据库排序规则?
  • 是否有更改服务器或数据库排序规则的解决方法?

如果可以,或者还有其他方法可以测试,那么我将有时间测试我创建的巨大脚本。

编辑:我不清楚目标:
我需要在查询中使排序规则相等。我可以通过在生产环境中的所有机器上运行脚本来完成此操作。如果查询导致问题,我可以转到错误并添加COLLATION子句。我想在我的开发机器上测试它,而不是在客户环境中开始测试这部分脚本。

2 个答案:

答案 0 :(得分:1)

为了安全起见,我将使用COLLATE子句明确地使查询在查询中相等。

http://msdn.microsoft.com/en-us/library/ms184391.aspx

答案 1 :(得分:1)

当然你可以改变那些:

但请注意:更改排序规则(服务器或数据库)不会更改数据库中已存在的列的排序规则!

如果您需要这样做,您需要更改所有数据库的每个表中的每个相关列。