千家信息网

解决Mysql存储emoji表情的两种方式

发表于:2024-10-13 作者:千家信息网编辑
千家信息网最后更新 2024年10月13日,下文给大家带来关于解决Mysql存储emoji表情的两种方式,感兴趣的话就一起来看看这篇文章吧,相信看完解决Mysql存储emoji表情的两种方式对大家多少有点帮助吧。要使mysql能存储emoji表
千家信息网最后更新 2024年10月13日解决Mysql存储emoji表情的两种方式

下文给大家带来关于解决Mysql存储emoji表情的两种方式,感兴趣的话就一起来看看这篇文章吧,相信看完解决Mysql存储emoji表情的两种方式对大家多少有点帮助吧。

要使mysql能存储emoji表情,需要数据库的版本在5.5以上。

为了解决问题,主要有两种方式:

第一种方式是修改字段的编码。

第二种方式是修改配置文件。

第一种方式:亲测可用

1)修改对应表字段的编码类型

ALTER TABLE table_name MODIFY COLUMN mark varchar(1000) CHARACTER

SET utf8mb4 COLLATE utf8mb4_unicode_ci

DEFAULT NULL COMMENT '备注';

再做如下设置:

SET NAMES utf8mb4;

之后再把clob类型转成char类型[convert(mark,char)]插入表中的字段就可以了。

第二种方式:因为缺乏测试环境,所以暂未测试

1)停止mysql数据库

2 )修改 my.cnf或者mysql.ini

[client]

default-character-set = utf8mb4

[mysql]

default-character-set = utf8mb4

[mysqld]

character-set-client-handshake = FALSE

character-set-server = utf8mb4

collation-server = utf8mb4_unicode_ci

init_connect='SET NAMES utf8mb4'

3) 重新启动mysql数据库

4) 检查字符集,更改其他的字符集

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';

修改数据库字符集:

ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

修改表的字符集:

ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

修改字段的字符集:

ALTER TABLE table_name CHANGE column_name column_name VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

看了以上关于解决Mysql存储emoji表情的两种方式详细内容,是否有所收获。如果想要了解更多相关,可以继续关注我们的行业资讯板块。

0