2

我目前正在将排序规则应用于我的 sql server 数据库,这些数据库位于数据库服务器 - sql server 2012 上。

每个数据库都有不同的排序规则,因为数据从拉丁语到 Cryillic 和一个阿拉伯语数据库不等。

我有3个问题:

  1. 是否可以将多个排序规则应用于同一个 sql server 数据库?
  2. 不同排序规则的事实数据库在同一个数据库服务器上,服务器排序规则和数据库之间是否存在冲突的可能性?
  3. 最后 - 是否有一个脚本可以用来对每个数据库应用排序规则,注意它们是创建并包含数据的?
4

1 回答 1

2

是否可以将多个排序规则应用于同一个 sql server 数据库?

数据库排序规则只是该数据库中新列的默认值。您可以根据自己的喜好指定不同的排序规则,只要它用于不同的列即可。您甚至可以在视图或 ad-hoc SQL 中指定排序规则。

不同排序规则的事实数据库在同一个数据库服务器上,服务器排序规则和数据库之间是否存在冲突的可能性?

服务器排序规则只是新数据库的默认排序规则。通常,它也是masterand使用的排序规则tempdb。这意味着对临时表的查询需要您明确指定排序规则。

最后 - 是否有一个脚本可以用来对每个数据库应用排序规则,注意它们是创建并包含数据的?

您可以使用alter database命令:

ALTER DATABASE TestDb ALTER COLLATION French_CI_AI

请注意,所有现有列都将保留其排序规则。如前所述,数据库排序规则只是新列的默认值。

于 2012-12-11T21:13:12.000 回答