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的區(qū)別
character set表示字符集,也就是字符(character)和對(duì)應(yīng)的編碼(encoding)合稱為character set.
collation是字符間比較的方法,比如binaray, case sensitive, case insensitive。
2 character set, collation的設(shè)置
可以通過(guò)show variables like "%char"; show variables like "%collation%"分別查看當(dāng)前的設(shè)置情況。
在my.cnf文件中,可以使用:
character-set-server=utf8
collation-server-utf8
設(shè)置缺省server的character set, collation,這兩個(gè)選項(xiàng)從4.1.3版本開始有效。之前版本的設(shè)置方法:
default-character-set=utf8
default-collation=utf8
通過(guò)上面的設(shè)置后,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中如何設(shè)置才能做到?
我目前都是先執(zhí)行set names 'utf8',再作進(jìn)一步查詢。
執(zhí)行set names 'utf8'后,show variables "%char%", show variables "%collation%"顯示所有的變量設(shè)置都是utf8的了。
聯(lián)系客服