mysql支持emoji表情

让MySql支持Emoji表情

解决方案:将Mysql的编码从utf8转换成utf8mb4。

需要 >= MySQL 5.5.3版本、(经检测5.5.29的也可以)低版本不支持这个字符集、复制报错

停止MySQL Server服务

修改 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‘

重启 MySQL Server:service mysql restart ,检查字符集

mysql> 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;

如果只是某个字段需要 只需要修改那个字段的字符集就可以了

另外服务器连接数据库 Connector/J的连接参数中,不要加characterEncoding参数。 不加这个参数时,默认值就时autodetect。

#jdbc_url=jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull

去掉characterEncoding=UTF-8

时间: 2024-12-25 08:35:47

mysql支持emoji表情的相关文章

让MySQL支持Emoji表情 mysql 5.6

让MySQL支持Emoji表情,涉及无线相关的 MySQL 数据库建议都提前采用 utf8mb4 字符集. mysql 版本 5.6 1 解决方案:将Mysql的编码从utf8转换成utf8mb4. 需要 >= MySQL 5.5.3版本.从库也必须是5.5的了.低版本不支持这个字符集.复制报错 2 my.cnf 文件添加 [mysqld]  character-set-server = utf8mb4  collation-server = utf8mb4_unicode_ci  init_c

mysql支持emoji表情存取的解决方案

让mysql支持emoji表情存取的解决方案 APP移动端无需做任何修改,服务端修改即可. 第一步:修改jdbcUrl: conn.url=jdbc:mysql://127.0.0.1:3306/eyes?zeroDateTimeBehavior=convertToNull&autoReconnect=true 第二步:mysql驱动包: mysql-connector-java-5.1.24.jar 第三步:数据库版本检查: select version() #查看mysql版本 5.6.23

mysql 支持emoji表情

在mysql插入emoji表情,出现错误: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x8A' for column 'content' at row 原因是当前mysql的字符集为utf-8,最多3个字节,emoji表情需要4个字节来表示.所以导致insert报错. 一般的方法是将字符集改为utf8mb4 2. utf8mb4这样的字符集需要mysql 5.5才支持,当时我的版本微5.1,所以自己去官网下了5.6的

mysql支持emoji表情上传

背景: 由于需要实现emoji表情评论的功能,所以数据库需要支持emoji表情的存储 mysql的utf8编码的一个字符最多3个字节,但是一个emoji表情为4个字节,所以utf8不支持存储emoji表情.但是utf8的超集utf8mb4一个字符最多能有4字节,所以能支持emoji表情的存储.但是在mysql5.5之前并不支持utf8mb4编码,所以mysql一定要在5.5及以上 1.首先修改mysql配置文件 1 [mysqld] 2 character-set-client-handshak

php mysql支持emoji表情方案

将emoji转换成utf8 然后存储到数据库,但是 效率低 1 public function rrr($text) { 2 $text = 'a??ss??ss??ss'; 3 //处理名字的emoji符号 4 $tmpStr = json_encode($text); //暴露出unicode 5 6 $tmpStr1 = preg_replace_callback("#(\\\ue[0-9a-f]{3})#i", function($a) { 7 //var_dump($a);

使mac版的MYSQL支持emoji表情

1.首先介绍下常用的字符集 ASCII:美国信息互换标准编码:英语和其他西欧语言:单字节编码,7位表示一个字符,共128字符. GBK:双字节,汉字内码扩展规范:中日韩汉字.英文.数字:双字节编码:共收录了21003个汉字,GB2312的扩展. UTF-8:Unicode标准的可变长度字符编码:Unicode标准(统一码),业界统一标准,包括世界上数十种文字的系统: UTF-8:使用一至三个字节为每个字符编码. utf8mb4:存储四个字节,应用场景用于存储emoji表情,因为可以emoji表情

让MySql支持Emoji表情(MySQL中4字节utf8字符保存方法)

手机端插入Emoji表情,保存到数据库时报错: Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x84' for column 'review' at row 1 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.jav

让MySql支持Emoji表情存储

java后台报错,如下. aused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x84' for column 'review' at row 1 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4096) at c

让MySql支持Emoji表情

解决方案:将Mysql的编码从utf8转换成utf8mb4. 需要 >= MySQL 5.5.3版本.从库也必须是5.5的了.低版本不支持这个字符集.复制报错 停止MySQL Server服务 修改 my.cnf或者mysql.ini [client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE cha