标签:character 符号 术语 har tin variables col 集成 系统管理
??数据库表被用来存储和检索数据。不同的语言和字符集需要以不同的方式存储和检索。因此,MySQL需要适应不同的字符集(不同的字母和字符),适应不同的排序和检索数据的方法。
在讨论多种语言和字符集时,将会遇到以下重要术语:
mysql> SHOW CHARACTER SET;
mysql> SHOW COLLATION;
??通常系统管理在安装时定义一个默认的字符集和校对。此外,也可以在创建数据库时,指定默认的字符集和校对。为了确定所用的字符集和校对,可以使用以下语句:
SHOW VARIABLES LIKE ‘character%‘;
SHOW VARIABLES LIKE ‘collation%‘;
为了给表指定字符集和校对,可使用带子句的CREATE TABLE:
CREATE TABLE mytable
(
columnn1 INT,
columnn2 VARCHAR(10) CHARACTER SET Tatinl COLLATE latin1_general_ci
)DEFAULT CHARACTER SET hebrew
COLLATE hebrew_general_cl;
??这个例子中指定了CHARACTER SET和COLLATE两者。一般,MySQL如下确定使用什么样的字符集和校对。
??校对在对用ORDER BY子句检索出来的数据排序时起重要的作用。如果你需要用与创建表时不同的校对顺序排序特定的SELECT语句,可以在SELECT语句自身中进行:
SELECT * FROM customers ORDER BY lastname,firstname COLLATE latinl_general_cs;
此SELECT使用COLLATE指定一个备用的校对顺序(在这个例子中,为区分大小写的校对)。这显然将会影响到结果排序的次序。
临时区分大小写 上面的SELECT语句演示了在通常不区分大小写的表上进行区分大小写搜索的一种技术。当然,反过来也是可以的。
SELECT的其他COLLATE子句 除了这里看到的在ORDER BY子句中使用以外,COLLATE还可以用于GROUP BY、HAVING、聚集函数、别名等。
最后,值得注意的是,如果绝对需要,串可以在字符集之间进行转换。为此,使用Cast()或Convert()函数。
标签:character 符号 术语 har tin variables col 集成 系统管理
原文地址:https://www.cnblogs.com/chengmf/p/13174421.html