SQL Server中文排序混乱】的更多相关文章

在sql语句中指定了含有中文的列进行排序,但排序结果看起来毫无规则,并不是按照拼音进行排序的检查了DB的Collation后,发现是SQL_Latin1_General_CP1_CI_AS解决方法: 在sql语句中指定排序列的collation为Chinese_PRC_CI_AS select col1, col2 from table order by col1 collate Chinese_PRC_CI_AS…
在英文版的操作系统中安装的MS SQL server,会出现中文字段无法被匹配到.其原因在于英文环境下安装的MS SQL server的排序规则不包括中文. 所以解决办法就是更改MS SQL server的排序规则:一般情况下,只需要右键数据库->properties->optiones->collation->chose "Chinese RPC CI AS"->OK.如果执行成功则OK. 但是如果数据库中设置了一些临时表的依赖,那么执行会报错. 解决办…
有时候查询数据库的时候会发现(比如做重名检查的时候):数据库的查询时对大小写不敏感的,也就是 A 和 a 是一样的. 也就是说 select * from tabletest where name = 'a' 和 select * from tabletest where name = 'A' 两条 sql 语句的执行结果是一样的. 该怎么办呢...百度了一下,才了解到这关系到了 SQL SERVER 的排序规则.之前在安装 SQL SERVER 的时候曾经见到过这个选项,但是一直没明白是啥意思…
摘自: http://www.2cto.com/database/201112/115138.html 以下的文章主要向大家描述的是SQL Server更改排序规则的实现过程,以及在实现其实际操作过程中我们要用到的实际应用代码的描述,本文首先是以使用 ALTER TABLE 语句更改列的排序规则讲起的: CREATE TABLE MyTable (PrimaryKey int PRIMARY KEY, CharCol varchar(10) COLLATE French_CI_AS NOT NU…
最近要做一个项目,需要使用TP3.2框架,之前什么也不会,就硬着头皮上了,结果真的闹了挺多emmmmmm挺低级的错误,就像SQL Server中文字段的读取,一开始我是照着读取英文字段的格式来写的,在Model层里 public function getAdminByUsername($username='') { $res = $this->_db->where('username="'.$username.'"')->select(); return $res;…
近日,在项目Debug过程中发现了SQL Server排序规则冲突的问题. 由于原数据库是从英文环境的SQL中生成的,其排序规则为“SQL_Latin1_General_CP1_CI_AS”,备份到本地中文环境之后,默认的排序规则为“Chinese_PRC_CI_AS”.本来对应的查询语句一直处于稳定的状态.但由于新增了字段,本地环境新增字段排序规则为“Chinese_PRC_CI_AS”,这时与原有的字段进行联查时会出现错误: 无法解决 equal to 运算中 "SQL_Latin1_Gen…
sql server:select * from [表名]order by [字段],[字段] collate Chinese_PRC_CS_AS_KS_WS mysql:select * from [表名] ORDER BY CONVERT([字段] USING gbk); oracle: 按中文拼音进行排序:SCHINESE_PINYIN_M SELECT * FROM [表名] ORDER BY NLSSORT(排序字段名,'NLS_SORT = SCHINESE_PINYIN_M');…
在数据库中查询每个字段的备注信息(备注信息是用中文写的),查询结果却是乱码,如图: 百度说需要设置数据库的排序规则,设置成中文的,结果还是报5030错误,无法修改字符集为Chinese_PRC_CI_AS.: The database could not be exclusively locked to perform the operation(SQL Server 5030错误解决办法) 借鉴http://www.cnblogs.com/psunny/archive/2010/09/28/1…
在上篇MS SQL 排序规则总结中,大致就数据库服务器排序规则(或者叫数据库实例排序规则).数据库排序规则.列的排序规则粗浅的叙说了一遍,重点讲述了修改数据库服务器排序规则(数据库实例排序规则),其中对于数据库排序规则的修改只是粗略带过.其实相对而言,修改服务器排序规则(数据库实例排序规则)相对简单一些,修改数据库的排序规则就复杂多了,因为涉及到数据.SQL脚本等等,例如,一不小心,修改排序规则后,数据当中可能就会出现乱码: 另外,修改数据库排序规则麻烦的是要大量修改相关表的字段的排序规则,如果…
创建数据库的代码---创建promary表 create table promary ( proID int primary key, proName varchar(50) not null ) 出现上图所示内容是因为proName varchar(50) not null这个地方有问题.一般来说,如果含有中文字符,用nchar/nvarchar,如果纯英文和数字,用char/varchar text用ntext. 但即使你按照我上面说的做了也可能出现乱码,一般的在进行中文字符插入时在中文字符…