MySQL 4.1 can do these things for you:
Store strings using a variety of character sets
Compare strings using a variety of collations
Mix strings with different character sets or collations in the same server, the same database, or even the same table
Allow specification of character set and collation at any level
In these respects, not only is MySQL 4.1 far more flexible than MySQL 4.0, it also is far ahead of other DBMSs
見(jiàn):http://dev.mysql.com/doc/mysql/en/charset-general.html
1 character set和collation的區別
character set表示字符集,也就是字符(character)和對應的編碼(encoding)合稱(chēng)為character set.
collation是字符間比較的方法,比如binaray, case sensitive, case insensitive。
2 character set, collation的設置
可以通過(guò)show variables like "%char"; show variables like "%collation%"分別查看當前的設置情況。
在my.cnf文件中,可以使用:
character-set-server=utf8
collation-server-utf8
設置缺省server的character set, collation,這兩個(gè)選項從4.1.3版本開(kāi)始有效。之前版本的設置方法:
default-character-set=utf8
default-collation=utf8
通過(guò)上面的設置后,show variables like "%char%"如下所示:
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | utf8 |
| character_set_results | latin1 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
show variables like "%collation%"顯示:
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | latin1_swedish_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-------------------+
3 問(wèn)題
我希望character-set-client, character-set-results,character-set-connection也是utf8, collation-connection也是utf8_general_ci,不知道在my.cnf中如何設置才能做到?
我目前都是先執行set names 'utf8',再作進(jìn)一步查詢(xún)。
執行set names 'utf8'后,show variables "%char%", show variables "%collation%"顯示所有的變量設置都是utf8的了。
聯(lián)系客服