SQL SERVER 大小写敏感设置及排序规则详解

最近操作数据库查询时,提示对象名无效,发现是因为数据库大小写敏感导致,可以通过排序规则设置如下:
排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集。     
如:Chinese_PRC_CS_AI_WS      
前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。     
排序规则的后半部份即后缀 含义:      
_BIN 二进制排序      
_CI(CS) 是否区分大小写,CI不区分,CS区分    (英文字母大小写) 
_AI(AS) 是否区分重音,AI不区分,AS区分      (某些非英语语言字母上有一撇或捺,就是重音,没有就不是,如"a"不等同于"á",发音不同)
_KI(KS) 是否区分假名类型,KI不区分,KS区分  (片假名和平假名日语音节)   
_WI(WS) 是否区分宽度 WI不区分,WS区分      (半角全角字符) 

修改排序规则     
如果是数据库:ALTER DATABASE 数据库名 COLLATE 排列规则     
ALTER DATABASE test COLLATE Chinese_PRC_CI_AI    
如果是表中的字段:ALTER TABLE 表名 ALTER COLUMN 字段名 数据类型(长度) COLLATE 排列规则     
ALTER TABLE test ALTER COLUMN name varchar(10) COLLATE Chinese_PRC_CI_AI

使用企业管理器可视化窗口设置也很简单:
数据库:打开数据库属性- 选择 选项 - 排序规则 修改
数据表:打开数据表设计表-列属性 -排序规则 修改

在SQL语句查询,默认select * from table where column1 = ' xx ' 不区分大小写
collate 选择排序,可用在查询区分大小写上,例:
select * from table where column1 collate Chinese_PRC_CS_AS= 'xx'
select * from table where column1 collate Chinese_PRC_CS_AS like 'a%'

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值