MySQL必知必会——全球化和本地化

字符集为字母和符号的集合。编码为某个字符集成员的内部表示;校对为规定字符如何比较的指令。在MySQL的正常数据库活动(select、insert等)中,使用何种字符集和校对的决定在服务器、数据库和表级进行。

MySQL支持众多的字符集。为查看所支持的字符集完整列表,可以使用如下语句:

show character set; 这条语句显示所有可用的字符集以及每个字符集的描述和默认校对。

查看所支持校对的完整列表,可以使用如后语句: show collation; 此语句显示所用可用的校对,以及它们适用的字符集。而且许多校对出现两次,一次区分大小写(由_cs表示),一次不分区大小写(由_ci表示)。

一般地,MySQL如下确定使用什么样的字符集和校对。

1)如果指定character set和collate两者,则使用这些值。

2)如果只指定character set,则使用此字符集及其默认的校对。

3)如果即不指定character set,也不指定collate,则使用数据库默认。

最后,值得注意的是,如果绝对需要,串可以在字符集之间进行转换,为此,使用Cast()或Convent()函数。