当前位置:Gxlcms > 数据库问题 > 数据库字符集与排序规则(Character Set And Collation)

数据库字符集与排序规则(Character Set And Collation)

时间:2021-07-01 10:21:17 帮助过:6人阅读

查看字符集:

SHOW CHARACTER SET;

部分结果:

技术分享

查看排序规则:(后缀"_cs"或者"_ci"意思是区分大小写和不区分大小写(Case Sensitive & Case Insensitve))

SHOW COLLATION;

部分结果:

技术分享

 

使用数据库支持的字符集与排序规则

  通常系统管理在安装时定义一个默认的字符集和排序规则,

也可以在创建数据库时对数据库范围,建表时对表级别,甚至列级别设置字符集和排序规则。

 

> 下图为建数据库时指定字符集和排序规则

技术分享

为了确定所用的字符集和排序规则,可以使用下列语句:

SHOW VARIABLES LIKE character%;
SHOW VARIABLES LIKE collation%;

 

> 建表时指定表的字符集和排序规则

1 CREATE TABLE mytable (
2     column1 INT,
3     column2 VARCHAR (10)
4 ) DEFAULT CHARACTER SET hebrew
5 COLLATE hebrew_general_ci;

不指定字符集和排序规则时使用数据库默认设置,若指定了字符集没有指定排序规则,则使用字符集的默认排序规则。

 

>建表时指定表和列的字符集和排序规则

CREATE TABLE mytable (
    column1 INT,
    column2 VARCHAR (10),
    column3 VARCHAR (10) CHARACTER SET latin1 
        COLLATE latin1_general_ci
) DEFAULT CHARACTER SET hebrew 
    COLLATE hebrew_general_ci;

 

>自定义查询语句中ORDER BY的排序规则

SELECT * FROM `mytable` ORDER BY `column1` COLLATE latin1_general_cs;

这里的使用不限于ORDER BY,还有GROUP BY,聚集函数等。

 

参考文章:

【1】MySQL比知必会 2009年1月第一1版 第27章 “全球化与本地化”

数据库字符集与排序规则(Character Set And Collation)

标签:技术   font   设置   指定   weight   order   character   from   code   

人气教程排行