JPR*_*ddy 36 sql-server collation sql-server-2008
我最近安装了SQL Server 2008,并选择了排序规则作为区分大小写.我想让它对整个实例不区分大小写(不适用于该实例中的数据库).如果我更改了排序规则,它是否会影响任何现有数据库?如果真是这样,那么是以哪种方式?
mar*_*c_s 62
您基本上需要再次运行安装以master使用新的排序规则重建数据库.您无法以任何其他方式更改整个服务器的排序规则.
看到:
更新:如果要更改数据库的排序规则,可以使用此T-SQL片段获取当前排序规则:
SELECT name, collation_name
FROM sys.databases
WHERE name = 'test2' -- put your database name here
Run Code Online (Sandbox Code Playgroud)
这将产生如下值:
Latin1_General_CI_AS
Run Code Online (Sandbox Code Playgroud)
的_CI意思是"不区分大小写" -如果你想区分大小写的,请_CS在原来的位置:
Latin1_General_CS_AS
Run Code Online (Sandbox Code Playgroud)
所以你的T-SQL命令是:
ALTER DATABASE test2 -- put your database name here
COLLATE Latin1_General_CS_AS -- replace with whatever collation you need
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令获取服务器上所有可用排序规则的列表:
SELECT * FROM ::fn_helpcollations()
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令查看服务器的当前排序规则:
SELECT SERVERPROPERTY ('Collation')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
100404 次 |
| 最近记录: |