Oracle数据传输MySQL中文编码问题
2018-01-18 08:56
369 查看
最近捣鼓数据库,当使用Navicat将Oracle的数据传输给MySQL时,如果Oracle表中存在中文,则该表传输会出错,错误为:
[ERR] 1366 - Incorrect string value: ‘\xE8\x81\x94\xE7\xB3\xBB…’ for
column ‘DESCRIPTION’ at row 1
首先:检查数据表所有字段的状态
show full columns from table-name;
然后,发现DESCRIPTION字段的Collation项非utf8,修改它!
alter table table-name change DESCRIPTION DESCRIPTIONvarchar(100) character set utf8 collate utf8_unicode_ci not null default ”;
修改完字段的字符集后可以再使用show full columns from table_name命令检查一下,以确保万无一失。假如您的SQL字符集为GBK或是GB2312或是其它的话,只需要将数据表字段的字符集更改为其相应的编码即可。
这个解决方案我自己尝试,并未成功,所以还需验证。
类似这样的错误,应该是数据库表的charset和collation问题。尝试把所有表的charset改为utf-8, collation改为utf8-unicode-ci。如果还是不能解决,最好是重建数据库,然后修改数据库的属性,选择charset为utf-8,collation为utf8-unicode-ci。命令行:create database cc default charset utf8 collate utf8_unicode_ci;
文章转载:
http://blog.csdn.net/clare504/article/details/9569347
http://ocaicai.iteye.com/blog/1138479
[ERR] 1366 - Incorrect string value: ‘\xE8\x81\x94\xE7\xB3\xBB…’ for
column ‘DESCRIPTION’ at row 1
错误解决:
检查数据库此字段的字符集与整理字符集是否与SQL语句传递数据的字符集相同;不相同则会引发MySQL1366错误。首先:检查数据表所有字段的状态
show full columns from table-name;
然后,发现DESCRIPTION字段的Collation项非utf8,修改它!
alter table table-name change DESCRIPTION DESCRIPTIONvarchar(100) character set utf8 collate utf8_unicode_ci not null default ”;
修改完字段的字符集后可以再使用show full columns from table_name命令检查一下,以确保万无一失。假如您的SQL字符集为GBK或是GB2312或是其它的话,只需要将数据表字段的字符集更改为其相应的编码即可。
解决方案二
直接修改mysql的安装文件下my.ini文件中的default-character-set=gbk;这个解决方案我自己尝试,并未成功,所以还需验证。
类似这样的错误,应该是数据库表的charset和collation问题。尝试把所有表的charset改为utf-8, collation改为utf8-unicode-ci。如果还是不能解决,最好是重建数据库,然后修改数据库的属性,选择charset为utf-8,collation为utf8-unicode-ci。命令行:create database cc default charset utf8 collate utf8_unicode_ci;
文章转载:
http://blog.csdn.net/clare504/article/details/9569347
http://ocaicai.iteye.com/blog/1138479
相关文章推荐
- mysql客户端插入中文数据出现的编码格式问题
- mysql 数据编码问题 插入含有中文出现自己串问题
- 针对各主流数据mysql、sqlserver、oracle中文乱码问题。
- mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)
- spring 插入mysql数据的中文编码问题
- 用hibernate进行MYSQL数据存储时遇到的中文编码问题及其解决方
- MYSQL数据抽取从utf8 到ORACLE ZHS16GBK 中文乱码的问题
- 谈乱码问题,如何解决MYSQL数据中文乱码问题
- MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解决方法总结
- MySQL中文编码的问题
- as3中的socket的readUTFBytes方法,它的UTF指的是UTF-8,只要服务器采用UTF-8编码,传输和修改中文的问题就能解决
- 关于属性传输中文的编码字符问题
- MySQL5.0中文问题及JSP汉字编码问题解决方法
- 终于解决了jsp连接mysql的中文编码问题!
- mysql默认编码设置成gbk,解决dos下查询中文乱码的问题!
- 连接mysql server 5.0 数据库的乱码问题,utf8编码,中文正确显示
- 中文数据写入MySql乱码问题
- 解决asp.net 用 mySql 数据库 添加数据时中文为乱码问题
- Sybase BCP导入数据时碰到中文编码问题的解决方法
- C#(WinForm) + MySQL的中文编码问题(MySQL中文编码的终极解决方案)