闲扯两下: 为啥要改呢

干活的时候,一般都是由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;

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐