CHARACTER SET utf8 COLLATE utf8_general_ci

DEFAULT CHARACTER SET utf8:数据库字符集。设置数据库的默认编码为utf8,utf8中间不要"-";

COLLATE utf8_general_ci:数据库校对规则。ci是case insensitive的缩写,意思是大小写不敏感;相对的是cs,即case sensitive,大小写敏感;还有一种是utf8_bin,是将字符串中的每一个字符用二进制数据存储,区分大小写。
如果建表的时候选择的是区别大小写的规则而查询的时候又暂时不想区别, 可以用类似 WHERE column_name COLLATE utf8_general_ci = 'xxx' 的写法改变查询使用的校对规则,新建数据 库时一般选用utf8_general_ci就可以了。

每一个数据库有一个数据库字符集和一个数据库校对规则,它不能够为空。CREATE DATABASE 和 ALTER DATABASE语句有一个可选的子句来指定数据库字符集和校对规则: 
CREATE DATABASE db_name 
[[DEFAULT] CHARACTER SET charset_name] 
[[DEFAULT] COLLATE collation_name]

ALTER DATABASE db_name 
[[DEFAULT] CHARACTER SET charset_name] 
[[DEFAULT] COLLATE collation_name]

如果指定了CHARACTER SET X和COLLATE Y,那么采用字符集X和校对规则Y。 
如果指定了CHARACTER SET X而没有指定COLLATE Y,那么采用CHARACTER SET X和CHARACTER SET X的默认校对规则。
如果在CREATE TABLE语句中没有指定表字符集和校对规则,则使用数据库字符集和校对规则作为默认值。

分别修改数据库,表,字段编码:
ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE  utf8_general_ci 
ALTER TABLE tbl_name DEFAULT CHARACTER SET utf8 COLLATE  utf8_general_ci 
ALTER TABLE tbl_name CHANGE ’column_name’ ’column_name’ 类型 CHARACTER SET utf8 COLLATE utf8_general_ci 
把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET character_name CHARACTER SET utf8 COLLATE utf8_general_ci 

查看数据库编码:
SHOW CREATE DATABASE db_name;   
查看表编码:
SHOW CREATE TABLE tb_name;   
查看字段编码:
SHOW FULL COLUMNS FROM tb_name; 
--------------------- 

原文:https://blog.csdn.net/vanessa_li/article/details/78095638?utm_source=copy 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值