首先,我用的mysql版本號是5.5.17的,最近遇到的問題是在eclipse中通過jdbc往數(shù)據(jù)庫寫中文數(shù)據(jù)的時候,在數(shù)據(jù)庫中顯示的是??即亂碼,為解決這個問題,搞了一個晚上(當(dāng)然熄燈后就就寢了(__) )外加早上這會兒,搞得頭都大了,改來改去導(dǎo)致連往數(shù)據(jù)庫直接寫中文都會報錯(我把錯誤頁貼出來吧)如下:

其實現(xiàn)在回頭看看,亂碼無非是改一下mysql安裝文件中的my.ini文件以及data中的db.opt文件,具體修改如下:
將my.ini文件中的文件修改為:
[client] port=3306[mysql]default-character-set=gbk[mysqld] character-set-server=utf8
現(xiàn)在需要將data中的db.opt修改一下:
default-character-set=utf8
default-collation=utf8_general_ci
好了,現(xiàn)在修改文件完畢,現(xiàn)在需要重寫啟動mysql服務(wù),進(jìn)入mysql后輸入命令:
show variables like “%colla%”;
然后再輸入show varables like “%char%”;
如果以上結(jié)果和下圖相同那就設(shè)置成功了


另外,以后如果再遇到從eclipse中往數(shù)據(jù)庫寫中文數(shù)據(jù)出sql異常時可以先在cmd中輸入命令:
show create database db;(db為數(shù)據(jù)庫名)可以查看數(shù)據(jù)庫的編碼,如果還是latin1,可使用以下命令修改數(shù)據(jù)庫編碼:
alter database db default character set utf8;
這樣就可以將數(shù)據(jù)庫的編碼改為utf8了。
此時,再通過jdbc連接時,就可以很隨意的添加中文到mysql中了。
以上便是我在使用mysql中遇到的亂碼問題,希望能給遇到相同問題的同學(xué)少走彎路提供一點參考。。。
請您花一點時間將文章分享給您的朋友或者留下評論。我們將會由衷感謝您的支持!
新聞熱點
疑難解答
圖片精選