数据库编码中文乱码

编码永远是一个让非英文国家苦恼的问题,亲测解决方法如下:
1.
查看服务器端编码
select userenv(‘language‘) from dual;
我实际查到的结果为:AMERICAN_AMERICA.AL32UTF8
2.
执行语句 select * from V$NLS_PARAMETERS  
查看第一行中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中是否和第一步得到的值一样。
如果不是,需要设置环境变量.
否则PLSQL客户端使用的编码和服务器端编码不一致,插入中文时就会出现乱码.
3.
设置环境变量
计算机->属性->高级系统设置->环境变量->新建
设置变量名:NLS_LANG,变量值:第1步查到的值(我的是AMERICAN_AMERICA.AL32UTF8).
4.
重新启动PLSQL,插入数据正常

补充:PL/SQL导入数据到另一数据库乱码

导入数据库为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK;

导出数据库为: AMERICAN_AMERICA.AL32UTF8

为了方便解决此问题,所以就修改了导入数据库所使用的语言跟字符集.

开始菜单打开运行对话框,使用”regedit“命令进入注册表,找到我的电脑下的:HKEY_LOCAL_MACHINE/SOFTWARE

/ORACLE/KEY_OraDb10g_home1(此路径为oracle在注册表中的配置信息),

查看名称为NLS_LANG的值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,修改成AMERICAN_AMERICA.AL32UTF8,

然后重新进入PL/SQL再次导入数据,应该就正常了.

时间: 2024-10-09 06:56:30

数据库编码中文乱码的相关文章

python向数据库插入中文乱码问题

这即将是一篇very short very short的博文,之所以发这篇博文主要是为了吐槽,表达我的气愤. 我靠,是个人都知道,编码问题遇上了是有多么恶心,就是很恶心很恶心很恶心就是了,对不对. 在python里,import MySQLdb后,向数据库插中文乱码的问题不是一次遇到. OK,就当我笨吧,我就是笨.曾几何时,python这边死皮赖脸地报错,曾几何时,sql那边雷打不动地显示乱码.姐能怎样,能怎样,还不是各种百度各种谷歌去撞.撞上了就撞上了,反正由于已经转晕了,也懒得记. 但是,今

在使用xutils时post请求传递中文到服务端Mysql数据库出现中文乱码。

            在使用xutils时post请求传递中文到服务端Mysql数据库出现中文乱码. 这个问题困惑了我很久,也走了很多弯路.经过不断的探究终于找到了问题的解决方案. 第一:查看自己的mysql的编码.cmd->mysql –uroot –p -->输入自己的mysql的密码->输入 SHOWVARIABLES LIKE 'character%';(如果装mysql时默认安装的话,会出现很多latin1,而不是我下面的全部utf-8,这是因为mysql默认的编码是lati

mybatis连接mysql数据库插入中文乱码

对于mysql数据库的乱码问题,有两中情况: 1. mysql数据库编码问题(建库时设定). 2. 连接mysql数据库的url编码设置问题. 对于第一个问题,目前个人发现只能通过重新建库解决,建库的时候,选择UTF-8字符集.我试过修改现有数据库字符集为UFT -8,但是根本不起作用,插入的中文仍然乱码(中文显示成:???).重建库时选择字符集为UTF-8之后,中文正常显示了. 对于第二个问题,是这样 的情况:我建库时设置了数据库默认字符集为UTF-8,通过mysql workbench直接插

mysql数据库的中文乱码问题的解决

今天终于解决了数据库中文乱码的问题,分享出来让更多的人作为参考,我们进入主题: 如果在搭建mysql数据库的时候没有设置它的编码格式,在以后的开发中,中文乱码会是一个令人头疼的问题,所以我在这里分享一种彻底解决乱码的方法: 我是在ubuntu云服务器环境下进行的设置,Windows操作系统下操作更加简单,这里就不赘述,方法类似,大家自己可以查阅资料. 首先在命令行下输入: #cd /etc/mysql 进入目录后,然后修改my.cnf配置文件(mysql版本在5.5以上,现在基本都是这个以上)

Mariadb 数据库写入中文乱码问题

从其他表里面导入数据,出现中文乱码错误.之前操作时并没有碰到类似问题,有些不得其解. 在网上搜了下,最后参考这篇文章,在执行insert前,先执行 set names gbk; 然后成功插入. 链接:http://www.cnblogs.com/pricks/archive/2010/01/10/1643471.html 原文: MySQL 4.1的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation).对于字符集

python操作数据库产生中文乱码问题【已解决】

记:最近在使用python进行学生成绩管理系统设计时,遇到了一个中文显示的问题,这个问题困扰了一个上午,查阅了有关资料,锁定了原因——编码问题.最终更改编码设置,问题得到了解决. 具体做法: 1 Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)    2 MySQL数据库charset=utf-8     3 Python连接MySQL是加上参数 charset=utf8     4 设置Python的默认编码为 utf-8 (sys.setdefaulte

web 项目:解决插入 MySQL 数据库时中文乱码问题

背景:在做 javaweb 项目的时,前台传递的中文最后插入数据库的时候总是出现乱码现象. 解决方案 ? A.不管是使用 Idea.eclipse,确定自己的项目所使用的字符集是 UTF-8. ? B.查看 MySQL的字符集是否是 UTF-8.打开 Dos 窗口,输入:mysql -u root -p, 在输入密码即可进入数据库.进入数据库输入命令 :show variables like 'character%';查看数据库的字符集,如下图: ? MySQL 的默认编码是 Latin1,不支

oracle 数据库插入中文乱码

一. 查询数据库编码 select userenv('language') from dual; 查询服务器编码 select * from v$nls_parameters; 推出sql查询系统编码 [email protected]:/# locale LANG= LANGUAGE= LC_CTYPE="POSIX" LC_NUMERIC="POSIX" LC_TIME="POSIX" LC_COLLATE="POSIX"

OPENDATASOURCE读取远程数据库数据中文乱码问题-sqlserver R2

insert into kraft_sync_Store(StoreName,StoreCode,Province,PrefectureCity,CountyCity,Region,Area,Unit,HQKA,KAName,StoreType,IsValid,ContactPerson,MobileTelephone,Telephone,Address,Latitude,Longitude,regiongroup,sfastoremanagername) Select CAST(storena