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数据表来获得支持的字符集以及排序方式。
也可以使用下列语句查询:
show character set; show collation;
登录后复制
如果没有给数据列设置字符集,那么默认会使用数据表的字符集。如果没有给数据表设置字符集,那么默认会使用数据库的字符集。如果没有给数据库设置字符集,那么默认会使用数据库服务器的字符集。
原文地址:Mysql 字符集设定, 感谢原作者分享。