修改server2005数据库的区分大小写设置

默认情况下,SQL Server 里面是不区分大小写的:

E:\>sqlcmd -S "localhost\SQLEXPRESS"
1> use test
2> go
已将数据库上下文更改为 'Test'。

-- 建立一个 tab 的测试表, 表名称为全部小写
1> CREATE TABLE [tab] ( id int )
2> go


1> select * from tab
2> go
id
-----------

(0 行受影响)
1> select * from Tab
2> go
id
-----------

(0 行受影响)

上面可以看出,默认情况下,
select * from tab 与 select * from Tab 是一样的。
因为不区分大小写


下面设置  test 数据库,让其区分大小写
alter database test  COLLATE  Chinese_PRC_CS_AS 


1> alter database test  COLLATE  Chinese_PRC_CS_AS
2> go

1> select * from tab
2> go
id
-----------

(0 行受影响)
1> select * from Tab
2> go
消息 208,级别 16,状态 1,服务器 WANGZHIQING\SQLEXPRESS,第 1 行
对象名 'Tab' 无效。


设置数据库区分大小写以后,可以看到 
select * from Tab 的时候, SQL Server 无法识别 "Tab" 这个表了
因为区分大小写了。


下面恢复 test 数据库的设置,让其不区分大小写
alter database test COLLATE Chinese_PRC_CI_AS

1> select * from tab
2> go
id
-----------

(0 行受影响)
1> select * from Tab
2> go
id
-----------

(0 行受影响)

恩,一切又恢复正常了。
posted @ 2012-02-18 17:15  狄大人  阅读(777)  评论(0编辑  收藏  举报