1. 程式人生 > >mysql資料表中文亂碼解決辦法

mysql資料表中文亂碼解決辦法

在往mysql資料庫中插入資料的時候出現數據(漢字)亂碼情況: 在把資料庫,資料表的編碼改為UTF-8後,還是亂碼。

Mysql的預設編碼方式是Latin1,不支援中文,因此,如果要讓mysql支援中文的話需要把資料庫預設的編碼修改為gbk或者utf8

1.檢視資料庫的編碼方式

mysql>show variables like 'character%';

   上面的各種字元設定必須一致,只是簡單的對資料庫、資料表設定編碼格式不能完全解決亂碼問題,我是將上面的說有字元編碼全設定為utf8後解決的亂碼問題。

對上面的資訊加以說明:

  | character_set_client

:客戶端請求資料的字符集(編碼方式)

  | character_set_connection:從客戶端接收到資料,再傳輸的字符集(建立連線使用的編碼)

  | character_set_database:預設資料庫的字符集,無論預設資料庫如何改變,都是這個字符集;如果沒有預設資料庫,那就使用 character_set_server 指定的字符集,

                            這個變數建議由系統自己管理,不要人為定義。

| character_set_results:結果集的字符集

| character_set_server:資料庫伺服器的預設字符集

| character_set_system

:這個值總是utf8,不需要設定,是儲存系統元資料的字符集

上述變數的值不一致或者顯示亂碼時,可以通過如下命令來修改:

mysql> SET character_set_client = utf8; 
mysql> SET character_set_results = utf8;  
mysql> SET character_set_connection = utf8;

2、找到MySQL5.0安裝目錄下編輯開啟my.ini檔案,修改為:

[client]

port=3306
default-character-set=utf8

[mysql]

default-character-set=utf8

# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=utf8

3、重新啟動資料庫。