Mysql中的字符集的设定分为以下集中级别: 1. Mysql服务器级别的字符集设定 2. 数据库级别的字符集设定 3. 数据表级别的字符集设定 4. 数据列级别的字符集设定 每种字符集对应一种默认的排序方式,可以分别使用character set charset 以及collate collation来

Mysql中的字符集的设定分为以下集中级别:

1. Mysql服务器级别的字符集设定
2. 数据库级别的字符集设定
3. 数据表级别的字符集设定
4. 数据列级别的字符集设定

每种字符集对应一种默认的排序方式,可以分别使用character set charset 以及collate collation来对数据库,数据表,数据列设定。服务器级别的字符集与排序方式是内建的,在编译阶段设定的。可以通过系统变量来设置它们,这个很少涉及。

在创建数据库, 数据表,数据列时,设定一个默认的utf8字符集以及utf8_general_ci排序方式(字符集与排序方式必须兼容):

create database db_name character set utf8 collate utf8_general_ci;
create table tbl_name 
(
  column varchar(10) character set utf8 collate utf8_general_ci
) engine = InnoDB character set utf8 collate utf8_general_ci
登录后复制

可以通过查询information_schema中的character_sets以及collations数据表来获得支持的字符集以及排序方式。

Mysql 字符集设定-LMLPHP

也可以使用下列语句查询:

show character set;
show collation;
登录后复制

如果没有给数据列设置字符集,那么默认会使用数据表的字符集。如果没有给数据表设置字符集,那么默认会使用数据库的字符集。如果没有给数据库设置字符集,那么默认会使用数据库服务器的字符集。

原文地址:Mysql 字符集设定, 感谢原作者分享。

09-18 22:28