程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 淺談mysql的中文亂碼問題

淺談mysql的中文亂碼問題

編輯:關於MYSQL數據庫

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

mysql報的錯誤

其實現在回頭看看,亂碼無非是改一下mysql安裝文件中的my.ini文件以及data中的db.opt文件,具體修改如下:

將my.ini文件中的文件修改為:

[client] 
port=3306

[mysql]

default-character-set=gbk

[mysqld] 
character-set-server=utf8

現在需要將data中的db.opt修改一下:

default-character-set=utf8
default-collation=utf8_general_ci

好了,現在修改文件完畢,現在需要重寫啟動mysql服務,進入mysql後輸入命令:

show variables like “%colla%”;

然後再輸入show varables like “%char%”;
如果以上結果和下圖相同那就設置成功了

圖一

圖二

另外,以後如果再遇到從eclipse中往數據庫寫中文數據出sql異常時可以先在cmd中輸入命令:

show create database db;(db為數據庫名)可以查看數據庫的編碼,如果還是latin1,可使用以下命令修改數據庫編碼:
alter database db default character set utf8;

這樣就可以將數據庫的編碼改為utf8了。

此時,再通過jdbc連接時,就可以很隨意的添加中文到mysql中了。

以上便是我在使用mysql中遇到的亂碼問題,希望能給遇到相同問題的同學少走彎路提供一點參考。。。

請您花一點時間將文章分享給您的朋友或者留下評論。我們將會由衷感謝您的支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved