加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql创建数据库有中文乱码是什么原因?如何解决?

发布时间:2023-04-07 14:50:46 所属栏目:MsSql教程 来源:
导读:有一些朋友在使用SqlServer创建新数据库的时候,有中文乱码的情况,这是什么原因呢?应该如何解决?下面就和大家聊聊SqlServer数据库中文乱码问题的解决办法。

问题:创建新数据库,存入中文显示乱码??
有一些朋友在使用SqlServer创建新数据库的时候,有中文乱码的情况,这是什么原因呢?应该如何解决?下面就和大家聊聊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区分   
 
  _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。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章