關於mysql無法添加中文數據的問題以及解決方案
下面的方法是針對window系統的
注意:
1 下面的my.ini文件在有些版本的Mysql中的安裝目錄找不到,比如我用的版本5.5.60-log就找不到,想要找到這個文件,需要設置顯示window系統隱藏文件(不懂的自行百度,因系統的版本不同而略有不同),然后回到c盤的根目錄,這時,你會看到ProgramData的文件夾
如圖:
點進去,找到MySQl,再找到名為MySQL Server 5.5的文件夾,my.ini文件就在這個文件夾下。
2 就是所有的編碼格式都設置為utf8了,包括配置文件、數據庫、表、字段等都設置好了,就是插入不了中文,查閱了很多的資料,終於在下面這篇文章找到答案,原來是window的cmd窗口的編碼格式為gbk,解決方法在文章的最后。
下面的轉自:https://www.cnblogs.com/1102whw/p/7815466.html
今天弄了一天的mysql數據庫,就是被一個mysql數據庫亂碼的問題給纏住了。現在記錄一下這個問題,雖然這個問題不是什么太大的事情,但還是記錄一下。
問題是這樣的:
1、先在mysql的安裝文件當中,找到配置mysql數據庫編碼的文件。
2、修改這兩處為utf8。
3、創建一個名為test的數據庫並且設置默認編碼格式為utf8
4、創建一個名為charTest1的表,並指定編碼為utf8
5、查看數據庫的編碼,已經全部改成了utf8
6、再看一下當前數據庫的表的編碼
7、到這里的時候,我以為大功告成了,所有能設置的地方我都設置了,都設置的是ut8。然后,我執行了一下insert語句,報錯了!!!!!!!!
這個錯誤糾結了一天,最后,看到了一篇博客,博客上面這么寫:
問題出在了CMD窗口,CMD窗口使用的編碼格式是gbk,這根本解決不了啊,唯一的辦法就是,不要用cmd窗口了,用圖形界面工具吧!!!如果非要用cmd窗口的話,那么可以加這句話,set names gbk;加了這句話,我們再看數據庫的編碼格式,發生了明顯變化。
這次再執行插入語句,
成功了!!!
原來這一切都是CMD在搗鬼!!!
從上圖中可以看到 MySQL 有六處使用了字符集,分別為:client 、connection、database、results、server 、system。其中與服務器端相關:database、server、system(永遠無法修改,就是utf-8);與客戶端相關:connection、client、results
快速方法
修改這兩處為utf8 為gbk。直接重啟MySQL下就好了