1,首先進入mysql的my.ini文件,進行編碼修改,全部改成utf8編碼(這里就不贅述了,網上一搜一堆) 2,最重要的一點,把原先navicat創建的連接斷開,重新創建新連接,在該新連接下創建庫,表(如果在原來連接上進行創建表,會讓你懷疑人生) 3,進行查詢你會發現在navicat上不亂碼,mysql的黑框框下面亂碼,因為windows窗口默認的字符編碼是gbk,而mysql是utf8,(所以就不用在意它了,總之是改對了)
不要在命令行里去修改編碼格式,改了沒有效果的,要在配置文件中修改才行!!!
要充分理解mysql字符集有很多環節的概念,最重要的3個:
database:就是數據庫內部存儲字符串用的編碼
connect :就是通過socket與mysql通信時的網絡編碼;
client:mysql命令終端和navicat都屬於客戶端,后台那個mysql進程才屬於服務端(server);
以上3個字符集必須都一樣。如果database和connect都是utf8,而client是gbk,那么你再通過utf8的編碼去select出來,肯定是亂碼。
相似內容鏈接:
https://blog.csdn.net/c_shell_python/article/details/82115242