为了账号安全,请及时绑定邮箱和手机立即绑定

如何在MySQL数据库中存储Emoji字符

如何在MySQL数据库中存储Emoji字符

幕布斯7119047 2019-12-17 13:12:19
如何在MySQL数据库中存储Emoji字符我在我的项目中使用了Emoji字符。角色被保存(?)进入MySQL数据库。中使用了数据库默认排序规则。utf8mb4_general_ci..它显示1366不正确的字符串值:‘\xF0\x9F\x98\x83\xF0\x9F.’对于第1行的“注释”一栏
查看完整描述

3 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

1)数据库:将数据库默认排序规则更改为utf8mb4.

2)表:更改表排序规则CHARACTER SET utf8mb4 COLLATE utf8mb4_bin.

查询:

ALTER TABLE Tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin

3)守则:

INSERT INTO tablename (column1, column2, column3, column4, column5, column6, column7)VALUES ('273', '3', '
Hdhdhdhhzhzhzzhjzj 我爱你 ', 49, 1, '2016-09-13 08:02:29', '2016-09-13 08:02:29')

4)集合utf8mb4在数据库连接中:

  $database_connection = new mysqli($server, $user, $password, $database_name); 
  $database_connection->set_charset('utf8mb4');



查看完整回答
反对 回复 2019-12-19
?
呼如林

TA贡献1798条经验 获得超3个赞

第1步,更改数据库的默认字符集:

ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

步骤2,在创建表时设置字符集:

CREATE TABLE IF NOT EXISTS table_name (...) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;

或更改表

ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;ALTER TABLE table_name modify name text charset utf8mb4;



查看完整回答
反对 回复 2019-12-19
  • 3 回答
  • 0 关注
  • 396 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信