mysql 查看与修改数据库/表/字段 编码以及排序规则总结
闲扯两下:为啥要改呢干活的时候,一般都是由utf8 改为 utf8mb4,因为移动端普及,很多人都喜欢卖萌或者好看 使用 emoji表情起名,发文等,这种情况utf8就会报错 因为utf8是最长3个字节,utf8mb4是4个字节它俩都是 Unicode字符。utf8mb4比utf8 多了emoji编码支持,utf8mb4 是目前最大的一个字符编码,还有那个排序 用 utf8mb4_general_
闲扯两下: 为啥要改呢
干活的时候,一般都是由utf8 改为 utf8mb4,因为移动端普及,很多人都喜欢卖萌或者好看 使用 emoji表情起名,发文等,这种情况utf8就会报错 因为utf8是最长3个字节,utf8mb4是4个字节
它俩都是 Unicode字符。utf8mb4比utf8 多了emoji编码支持,utf8mb4 是目前最大的一个字符编码,
还有那个排序 用 utf8mb4_general_ci 就可以
原因:utf8_unicode_ci比较准确,utf8_general_ci速度比较快。通常情况下 utf8_general_ci的准确性就够我们用的了
不扯了,开搞!
一:数据库方面
1.创建数据库的时候,自个选
2.用命令
ALTER DATABASE xxx(数据库名称) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
3.如果你不嫌麻烦,或者自个找雷子也可以这样如下图(不推荐)
配置完重启mysql 即可 别忘记查看字符集 命令如下:
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
或
show variables like "%char%"; (推荐)
二:数据库表层面
命令:
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATEutf8mb4_general_ci;
三:数据库表 字段
命令:
ALTER TABLE table_name CHANGE `xx` `xx` VARCHAR(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL
或
ALTER TABLE table_name MODIFY `xxx` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
查看是否修改成功:SHOW FULL COLUMNS FROM confession;
四:mysql 中查看表、字段的编码格式
1、查询 MySQL 的版本:select version();
2、查询 MySQL 当前使用的字符集:show variables like "%char%";
3、查询指定数据库的指定数据表的状态信息:show table status from `数据库名` LIKE '%表名%';
4、查看数据库表所有字段的编码格式:show full columns from tableName;
5、查看表的编码格式:show create table tableName;
更多推荐
所有评论(0)