如何解决mysql导入文件中文乱码的难题
发布时间:2022-02-23 10:42:16 所属栏目:MySql教程 来源:互联网
导读:小编给大家分享一下如何解决mysql导入文件中文乱码的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! mysql导入文件中文乱码的解决办法:首先创建数据库并制定编码;然
小编给大家分享一下如何解决mysql导入文件中文乱码的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! mysql导入文件中文乱码的解决办法:首先创建数据库并制定编码;然后在导入数据库文件之前,制定编码set names utf8即可。 继续昨天的问题,数据库配置好后,查询表发现中文乱码了,看了网上的几个方法也没解决。 感觉是导入的sql文件问题,那么逆向的思考,用命令创建个数据库,添加些数据,然后导出来看看什么情况。 向表内插入数据的时候发现报错: ERROR 1366 (HY000): Incorrect string value: 'xE6xB5x8BxE8xAFx95' for column 'bookname' at row 1 果断再改,通过命令:alter table book change bookname bookname varchar(32) character set utf8; 改完后也不看了,直接插数据试试: insert into book (id,bookname,size,price) values (1,"测试",2,3) 那么开始进行下一步,导出sql文件,进入到mysql的bin目录下,开始通过命令导出,这个过程需要输入密码 E:mysql-5.7.28-winx64bin>mysqldump -u root -p test > test.sql Enter password: ******* 导出的文件,表的编码格式utf8,与之前导入文件的比较并看不出什么问题。 那么,就是之前导入文件的过程,创建数据库的过程除了问题,查看之前导入的mydb.sql 的mydb数据库结构,果然不对: mysql> use mydb; Database changed mysql> show variables like 'character_set_database'; +------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | character_set_database | latin1 | +------------------------+--------+ 1 row in set, 1 warning (0.00 sec) 遂修改之:alert database mydb character set utf8; (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |