Navicat和JDBC中都是正常的(Windows),通過cmd(代碼頁utf8)進mysql,查詢結果是第一張圖左邊;直接進mysql(代碼頁簡體中文GBK)效果第一張圖右邊。命令查看mysql編碼第二張圖。
關於mysql亂碼問題網上也看了幾篇教程,但是都沒啥用啊。
注意幾點,我之前自學也遇到了,
1:client,connection,results這三個編碼屬性必須一致。你看你的這些屬性都設置為utf-8。但是在CMD窗口上右鍵看看自己的編碼 是GBK的。
這是錯誤的關鍵點。但是通過source導入的的是utf-8編碼的sql腳本,雖然cmd是GBK的,但是這與你告訴的mysql你的client是一致的編碼。能正常導入。
2: 解決辦法,可以chcp 65001命令修改cmd的編碼格式,但是不建議,這樣就不能輸入中文了。再改回是chcp 936。當然還需選字體神馬的,你具體自己百度。
3:我常用的就是:charset gbk; 後client,connection,results編碼變為gbk,不過每次打開cmd後,都需要重新charset gbk;
請務必保證你的工作環境的編碼與 你告訴mysql的client,connection,results編碼一致即可。
自己琢磨的總結,希望對你有幫助。