SQL SERVER 的排序规则
有时候查询数据库的时候会发现(比如做重名检查的时候):数据库的查询时对大小写不敏感的,也就是 A 和 a 是一样的。
也就是说 select * from tabletest where name = 'a' 和 select * from tabletest where name = 'A'
两条 sql 语句的执行结果是一样的。
该怎么办呢。。。百度了一下,才了解到这关系到了 SQL SERVER 的排序规则。之前在安装 SQL SERVER 的时候曾经见到过这个选项,但是一直没明白是啥意思。。。
可能这个排序规则的翻译也比较迷惑,英文原文是 collation ,查了一下词典,好像意思是校对整理什么的,反正没看见直接有排序的意思。
不过这个东西也确实跟排序有关,比如有一系列的姓名(中文)数据,就可以指定按拼音排序(Chinese_PRC_)呀,还是按笔画排序(Chinese_PRC_Stroke_)什么的。。。
更多排序规则可查看:https://technet.microsoft.com/zh-cn/library/ms188046.aspx
这里是要为了解决大小写敏感的问题,好吧,也在上面那个网页中有解释,可以设置以下参数:
- CaseSensitivity CI 指定不区分大小写,CS 指定区分大小写。AccentSensitivity AI 指定不区分重音,AS 指定区分重音。KanatypeSensitive Omitted 指定不区分假名类型,KS 指定区分假名类型。WidthSensitivity Omitted 指定不区分全半角,WS 指定区分全半角。
设置排序规则的 sql 语句为:
COLLATE Chinese_PRC_CS_AS_KS_WS
前半部分是排序相关的,后半部分就是上面列的那四个选项了,可以根据需要随意添加修改。。。具体怎么加。。。
--要不就百度一下,或者看上面的MSDN链接里面的例子,不想写了。。。
MSDN:https://technet.microsoft.com/zh-cn/library/ff848763.aspx
排序规则可以对服务器进行设置,也可以对数据库进行设置,可以对数据表中的列进行设置,或者随用随设也可以
除了使用 sql 语句设置,还可以通过 SSMS 图形界面设置:
服务器设置可能比较麻烦,需要先停止服务器什么的,最好在安装的时候设置好吧
数据库就直接属性选项里面有下拉列表可以选择设置。
对数据表中的列,在表设计器下面的列属性上可以设置
嗯,还有图形界面可以选择选项(●'◡'●)
请原谅我写的简单。。。(完)
SQL SERVER 的排序规则相关推荐
- 【数据库】关于SQL SERVER的排序规则的问题分析
在安装报表系统,运行sql语句时候提示"无法解决 equal to 操作的排序规则冲突.",费了半天时间才搞定,原来是因为sql语句中没有加全collate Chinese_PRC ...
- 17.sql server数据库使用规则、二八原则、数据库查询集群--数据库读写分离多种实现、数据库配置读写分离(by-朝夕)
Database 课程目标 环境准备: 一.二八原则 二.数据库读写分离 好处: 绝大部分的企业内部应用,可能不需要上图那么庞大的架构,一台主数据库服务器和一台查询服务器通常能满足读写分离的要求.而且 ...
- Ms SQL Server 约束和规则
一.SQL约束 约束定义关于列中允许值的规则,是强制完整性的标准机制. 使用约束优先于使用触发器.规则和默认值.查询优化器也使用约束定义生成高性能的查询执行计划. 1:类型 约束的类型一共分三种 域约 ...
- sql server视图排序
视图可以理解为一个临时表,是一个结果集合,大部分对表的操作语句都可以用,但是对于升序降序的语句略有不同 在这里我们选择在设计界面中直接操作 第一步:在列条件区域进行设置,类似于excel的傻瓜式操作 ...
- 修改SQL Service数据库排序规则
修改数据库 alter database KidsPang COLLATE Chinese_PRC_CI_AS 修改表中字段 ALTER TABLE [Member] ALTER CO ...
- SQL Server查询排序 升序 降序
--AddTime 升序,ID 升序 select * from DS_Finance ORDER BY AddTime,ID; --AddTime 升序,ID降序 select * from DS_ ...
- SQL Server数据库迁移–将数据库克隆到另一个排序规则
Database migration is a vital task in any environment, complex or otherwise. Seamless migrations are ...
- Sql Server排序规则的简介、选择、应用
用SQL语句查询当前数据库的默认排序规则 use db_name exec sp_helpsort go --以下转自:http://hi.baidu.com/jztchina/blog/item ...
- SQL之COLLATE 子句 排序规则
COLLATE 是一个子句,可应用于数据库定义或列定义以定义排序规则,或应用于字符串表达式以应用排序规则转换. 语法 COLLATE { <collation_name> | databa ...
最新文章
- cv2.getStructuringElement 学习
- python升维方法_python机器学习12:数据“升维”
- c++ 结构体遍历_PBRT-E4.3-层次包围体(BVH)(一)
- 阿里巴巴集团的几十款著名开源项目(Java)
- PageHelper分页插件
- 脚本加密http://www.datsi.fi.upm.es/~frosal/sources/
- 我发现了25个影响力达20多年的 Windows 0day,微软刚修完11个
- ajax怎么传全局变量的值,ajax方法如何给全局变量赋值(示例代码)
- Mac-删除自带 ABC 输入法的方法
- mac book pro 安装网络准入后经常死机
- 杭电一学生还没毕业年薪已过百万,带十几人的研发团队
- 28岁程序员目前考虑转行,但又不知道自己能干什么
- Vue 实现 H5video 视频标签 禁止快进 最优
- tf.meshgrid
- 干货笔记,数据仓库工具箱
- linux 静态编译多媒体框架,Go编译32位GNU静态链接库的方法
- ctfmon 输入法消失了
- 电影分级USA、HK
- Intel 变天了!新 CEO 正式上任:曾担任 Intel 首个 CTO,已吸引 3 位技术大神加盟...
- PDF在线预览(java实现)