mysql字符集說明

mysql字符集說明mysql

1、mysql中涉及的幾個字符集sql

Ø character-set-server/default-character-set:服務器字符集,默認狀況下所採用的。 數據庫

Ø character-set-database:數據庫字符集。服務器

Ø character-set-table:數據庫表字符集。編碼

優先級依次增長。因此通常狀況下只須要設置character-set-server,而在建立數據庫和表時不特別指定字符集,這樣統一採用character-set-server字符集。rest

Ø character-set-client:客戶端的字符集。客戶端默認字符集。當客戶端向服務器發送請求時,請求以該字符集進行編碼。server

Ø character-set-results:結果字符集。服務器向客戶端返回結果或者信息時,結果以該字符集進行編碼。it

Ø character_set_connection 鏈接字符集。io

在客戶端,若是沒有定義character-set-results,則採用character-set-client字符集做爲默認的字符集。因此只須要設置character-set-client字符集。要處理中文,則能夠將character-set-server和character-set-client均設置爲GB2312,若是要同時處理多國語言,則設置爲UTF8。table

 

2、解決亂碼問題

一般亂碼問題是由於字符集不統一而形成的。一般字符character-set-server、character-set-client、character_set_connection須要統一

 

3、修改默認字符集

一、 最簡單的修改方法,就是修改mysql的my.ini文件中的字符集鍵值,
      如     default-character-set = utf8
            character_set_server = utf8
    修改完後,重啓mysql的服務,service mysql restart
    使用 mysql> SHOW VARIABLES LIKE 'character%';查看,發現數據庫編碼均已改爲utf8
+--------------------------+---------------------------------+
| Variable_name             | Value                            |
+--------------------------+---------------------------------+
| character_set_client      | utf8                             |
| character_set_connection | utf8                             |
| character_set_database    | utf8                             |
| character_set_filesystem | binary                           |
| character_set_results     | utf8                             |
| character_set_server      | utf8                             |
| character_set_system      | utf8                             |
| character_sets_dir        | D:"mysql-5.0.37"share"charsets" |
+--------------------------+---------------------------------+

 

二、 還有一種修改字符集的方法,就是使用mysql的命令
    mysql> SET character_set_client = utf8 ;

    init_connect='SET NAMES utf8' 

相關文章
相關標籤/搜索