標籤:資料庫管理 default general 二進位
資料庫提供了多種字元集,如Latin1、utf8、gdk、big5等。字元集指的是在同一個字元集內字元之間的比較規則。只有確定字元序後,才能在一個字元集上定義什麼是等價的字元,以及字元之間的大小關係。一個字元集可以包含多種字元序,每個字元集有個預設的字元序(default collation),每個字元唯一對應一種字元集。MySQL字元命名規則是:以字元序對應的字元集名稱開頭,以國家名置中(或以general置中),以ci、cs或bin結尾。以ci結尾的字元表示大小寫不敏感,以cs結尾的字元集表示大小寫敏感,以bin結尾的字元集序表示按二進位編碼值比較。例如:latin1字元集有latin1_swedish_ci、latin1_gengeral_cs、latin1_bin等字元序,其中在字元序latin_swedish_ci規則中,字元‘a’和“A”是等價的。
Latin1支援西歐字元、希臘字元等,gbk支援中文簡體字元,big5支援中文繁體字元,utf8幾乎支援世界上所有國家的字元。
Latin1 佔用一個位元組(8位)
Gbk 佔用兩個位元組
Utf8 佔用三個位元組
使用MySQL命令:show character set;查看字元集。
650) this.width=650;" src="http://blog.itpub.net/attachment/201408/1/29272216_1406871058T4Ai.jpg" width="700" height="646" style="border:0px;" />
使用MySQL命令:show variables like ‘character%’;查看當前MySQL會話使用的字元集,其中character_sets_dir 參數定義了MySQL字元集檔案儲存路徑
“C:\programfiles\mysql\mysql server 5.6\share\charsets”
650) this.width=650;" src="http://blog.itpub.net/attachment/201408/1/29272216_1406871142PPUU.jpg" width="700" height="370" style="border:0px;" />
其中,client:MySQL客戶機的字元集,預設安裝MySQL後,該值為latin1
Connection:資料通訊鏈路的字元集,當MySQL客戶機向伺服器發送請求時,請求資料以該字元集進行編碼。預設安裝資料庫後,該值為latin1
Database:資料庫字元集,預設安裝資料庫後,該值為latin1
Filesystem:MySQL伺服器檔案系統的字元集,該值是固定的binary
Results:結果集的字元集,MySQL伺服器向MySQL客戶機返回執行結果時,執行結果以該字元集進行編碼。預設安裝後,該值為latin1
Server:MySQL伺服器執行個體字元集,預設安裝MySQL後,該值為latin1
System:中繼資料(欄位名、表名、資料庫名等)的字元集,預設值為utf8.
使用“show variables like ‘collation%’”查看當前MySQL會話使用的字元序。
650) this.width=650;" src="http://blog.itpub.net/attachment/201408/1/29272216_14068714423Vi6.jpg" width="449" height="164" style="border:0px;" />