怎么让SQL SERVER 2008 R2系统 不区分大小写
我以前的库排序是二进制的,版本是SQL 2000 区分大小写 ,我做了BAK文件, 恢复到SQL SERVER 2008 R2 我发现居然还是二进制的,查询数据,依然是区分大小写的,那么我如何转换成 不区分大小写呢,谢谢.
[解决办法]
USE 你的数据库
GO
ALTER DATABASE 你的数据库 COLLATE Chinese_PRC_BIN
GO
--返回0,说明
select case when 'aa' = 'AA' then 1 else 0 end
/*
0
*/
--通过制定排序规则collate Chinese_PRC_CI_AS,也就是不区分大小写
--返回1,说明
select case when 'aa' collate Chinese_PRC_CI_AS = 'AA' collate Chinese_PRC_CI_AS
then 1
else 0
end
/*
1
*/
ALTER DATABASE 你的数据库 COLLATE Chinese_PRC_CI_AS
GO
alter database 数据库
set single_user
with rollback immediate
go
ALTER DATABASE 数据库 COLLATE Chinese_PRC_CI_AS
GO
alter database 数据库
set multi_user
1、关闭sql agent
2、重启服务器
3、执行:
use master
go
alter database 数据库
set single_user
with rollback immediate
go
ALTER DATABASE 数据库 COLLATE Chinese_PRC_CI_AS
GO
alter database 数据库
set multi_user