Sql Server 强制大小写区分方法

时间:2022-06-01 17:01:43
1、将数据库中某列强制修改为大小写识别 比如想修改表:tb_TestTable400中的userPWD14列
<span style="font-size:14px;">ALTER TABLE tb_TestTable400
ALTER COLUMN userPWD14 nvarchar(128) COLLATE Chinese_PRC_CS_AS</span>
2、在sql语句中指定
不区分大小写:
<span style="font-size:14px;">select * from tb_TestTable400
where userPWD14 ='VaNny' COLLATE Chinese_PRC_CI_AS</span>
区分大小写:
<span style="font-size:14px;">select * from tb_TestTable400
where userPWD14 ='VaNny' COLLATE Chinese_PRC_CS_AS</span>
3、将整个数据库强制修改为大小写区分(测试后,不知道为什么没有效果)
<span style="font-size:14px;">alter database databaseName COLLATE Chinese_PRC_CS_AS</span>
如果上面的语句执行报出下面的错误:
<span style="font-size:14px;">消息 5030,级别 16,状态 2,第 1 行
无法用排他锁锁定该数据库,以执行该操作。
消息 5072,级别 16,状态 1,第 1 行
ALTER DATABASE 失败。无法将数据库 'Test' 的默认排序规则设置为 Chinese_PRC_CS_AI。</span>
重启一下mssqlserver的服务即可

小注: 在安装Sql Server的时候,应该考虑好排序方式以及大小写是否区分这些细节。