這篇文章給大家分享的是有關(guān)MySQL導出數(shù)據(jù)出現(xiàn)亂碼的解決方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比正陽網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式正陽網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務覆蓋正陽地區(qū)。費用合理售后完善,10年實體公司更值得信賴。
我們可以利用convert函數(shù)轉(zhuǎn)換編碼從而解決此問題。
CONVERT()提供一個在不同字符集之間轉(zhuǎn)換數(shù)據(jù)的方法。
語法:
CONVERT(expr USING transcoding_name)
例如:
SELECT CONVERT(latin1field USING utf8) FROM latin1table;
在 MySQL中轉(zhuǎn)換代碼名與相應的字符集名相同。
舉例:
學生表
下面我們將學生表的查詢結(jié)果導出到Excel文件
select * from student_grade into outfile 'D:/Files/student.xls';
此時,生成的Excel文件出現(xiàn)了亂碼。
這是因為student表是采用utf8編碼(可以用show create table student;語句查看一下),而Excel文件則是GB2312編碼。
所以我們采用convert將中文字段轉(zhuǎn)換成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';
這樣就不會出現(xiàn)亂碼了。
感謝各位的閱讀!關(guān)于mysql導出數(shù)據(jù)出現(xiàn)亂碼的解決方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!