解决mssql for linux 中文乱码问题

Posted Allen0910

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决mssql for linux 中文乱码问题相关的知识,希望对你有一定的参考价值。

  什么叫一波未平一波又起,这就是,好不容易安装完成了,在用的时候居然出现了乱码,很是头疼,但还是解决了这个蛋疼的问题,在windows中使用mssql这么久,从来没出现过中文乱码的情况,具体原因是出现在SQL Server的安装配置上,默认安装时,系统默认的排序规则时拉丁文的排序规则,在安装过程中从来没注意过,但在CentOS 中怎么配置我就不得而知了,我只能在windows的mssql 客户端进行配置了,解决方法:

  创建数据库时,将数据库的排序规则指定为中文简体(Chinese_PRC_CS_AI_WS),注意一点,如果这时数据库中有的表存在数据了,这样操作会失败,所以建议大家在一开始创建数据库的时候就先设置好排序规则,以免麻烦。操作步骤,右键数据库属性->点击选项->修改排序规则,如图:

技术分享

设置完后,再添加的数据就不会出现乱码了。如果是在windows上出现乱码的情况一样可以这样设置,当然还有粗暴的方式,即使重装系统,重装sql,选择好排序规则后再安装。

参数解释如下:
前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。
排序规则的后半部份即后缀 含义:
  _BIN 二进制排序
  _CI(CS) 是否区分大小写,CI不区分,CS区分
  _AI(AS) 是否区分重音,AI不区分,AS区分   
  _KI(KS) 是否区分假名类型,KI不区分,KS区分 
        _WI(WS) 是否区分宽度WI不区分,WS区分 
区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。
区分重音:如果想让重音和非重音字母视为不等,请选择该选项。如果选择该选项,
比较还将重音不同的字母视为不等。
区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。
区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项













以上是关于解决mssql for linux 中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章

mssql乱码问题

解决mssql localdb 中文乱码问题

python3连接MSSQL数据库 中文乱码怎么解决

python3连接MSSQL数据库 中文乱码怎么解决

Linux下PHP freetds连接MSSQL 乱码

如何解决 ZOC for MAC OS X 的中文乱码问题