品易云推流 关闭
文章详情页
文章 > MySQL > mysql导出数据出现乱码怎么办

mysql导出数据出现乱码怎么办

头像

FXL

2020-09-07 10:59:292408浏览 · 0收藏 · 0评论

我们可以利用convert函数转换编码从而解决此问题。

(推荐教程:mysql数据库学习教程

CONVERT()提供一个在不同字符集之间转换数据的方法。

语法:

CONVERT(expr USING transcoding_name)

例如:

SELECT CONVERT(latin1field USING utf8) FROM latin1table;

在 MySQL中转换代码名与相应的字符集名相同。

举例:

学生表

993e3841519c7bbb951636d42ea2411.png

下面我们将学生表的查询结果导出到Excel文件

select * from student_grade into outfile 'D:/Files/student.xls';

此时,生成的Excel文件出现了乱码。

这是因为student表是采用utf8编码(可以用show create table student;语句查看一下),而Excel文件则是GB2312编码。

所以我们采用convert将中文字段转换成gbk编码:

select sid, convert((sname) using gbk) as sname, convert((gender) using gbk) as gender,class, convert((major) using gbk) as major from student into outfile 'D:\Files\student.xls';

这样就不会出现乱码了。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图