SqlServer数据库中⽂乱码问题解决⽅法
问题:创建新数据库,存⼊中⽂显⽰乱码
原因分析:SQL版的乱码问题还是出现在SQL SERVER的安装设置上。默认安装时系统默认的排序规则是拉丁⽂的排序规则,但⼀般⼈在安装时没有考虑到这⼀点,安装时只是点取下⼀步,安装完成后,造成了SQL版在使⽤过程中出现乱码。
解决⽅法1:
如果是新建数据库,可以在建⽴数据时指定排序规则,记得选中⽂简体(Chinese_PRC_CS_AI_WS);如果数据库中已经有数据,则转换编码会失败
操作步骤
1.右键数据库》属性
2.点击“选项”》修改排序⽅式
解决⽅法2:
最彻底的就是重装SQL,在安装时⾃定义安装,选好语⾔版本及排序规则,这样问题就解决了。
参数解释如下:
前半部份:指UNICODE字符集,Chinese_PRC_指针对⼤陆简体字UNICODE的排序规则。
排序规则的后半部份即后缀含义:
_BIN ⼆进制排序
_CI(CS) 是否区分⼤⼩写,CI不区分,CS区分
_AI(AS) 是否区分重⾳,AI不区分,AS区分
中文字符unicode查询 _KI(KS) 是否区分假名类型,KI不区分,KS区分
_WI(WS) 是否区分宽度WI不区分,WS区分
区分⼤⼩写:如果想让⽐较将⼤写字母和⼩写字母视为不等,请选择该选项。
区分重⾳:如果想让重⾳和⾮重⾳字母视为不等,请选择该选项。如果选择该选项,
⽐较还将重⾳不同的字母视为不等。
区分假名:如果想让⽐较将⽚假名和平假名⽇语⾳节视为不等,请选择该选项。
区分宽度:如果想让⽐较将半⾓字符和全⾓字符视为不等,请选择该选项
sqlserver 建库指定utf-8 修改库为utf-8编码
CREATE DATABASE paas COLLATE Chinese_PRC_CI_AS
GO
ALTER DATABASE paas COLLATE Chinese_PRC_CI_AS
GO
让ASP和MS SQL SERVER⽀持UTF-8编码存储多国语⾔⽂字
近⽇在ASP+MS SQL存储UTF-8编码内容的时候,出现乱码的情况,经过查询发现要使SQL SERVER⽀持UTF-8编码格式,必须做⼀些修改才可以。
1、确保ASP页⾯是UTF-8编码的,并在ASP页⾯顶部声明中使⽤<%@ LANGUAGE = VBScript CodePage = 65001%>进⾏编码声明
2、输出的HTML页⾯中声明字符集:<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
3、在进⾏URL参数传递的时候,要使⽤Server.URLEncode()⽅法进⾏编码
4、使⽤JS进⾏URL参数传递中⽂的时候,要使⽤escape进⾏编码
5、在将UTF-8编码的内容存⼊SQL SERVER数据库中的时候,要存储的字段必须设置为NVARCHAR类型,SQL语句要在内容前加N表⽰,如insert into user (name) values (N´&username&´),除id意外的字段都需要加N。
字符数据类型是固定长度,nchar,或可变长度,nvarchar,unicode数据,并使⽤Unicode UCS-2字符集.
较早的ucs-2(2字节通⽤字符集)是类似的字符编码,1996年7⽉在Unicode标准的2.0版中被utf-16所取代。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论