我们可以利用convert函数转换编码从而解决此问题。
(推荐教程:)
CONVERT()提供一个在不同字符集之间转换数据的方法。
语法:
CONVERT(expr USING transcoding_name)
例如:
SELECT CONVERT(latin1field USING utf8) FROM latin1table;
在 MySQL中转换代码名与相应的字符集名相同。
举例:
学生表
下面我们将学生表的查询结果导出到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';
这样就不会出现乱码了。
Copyright © 2019-2025 how234.cn 版权所有 赣ICP备2023008801号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务