猿问

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

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

我在我的项目中使用了Emoji字符。角色被保存(?)进入MySQL数据库。中使用了数据库默认排序规则。utf8mb4_general_ci..它显示

1366不正确的字符串值:‘\xF0\x9F\x98\x83\xF0\x9F.’对于第1行的“注释”一栏


幕布斯7119047
浏览 401回答 3
3回答

绝地无双

1)数据库:将数据库默认排序规则更改为utf8mb4.2)表:更改表排序规则CHARACTER SET utf8mb4 COLLATE utf8mb4_bin.查询:ALTER TABLE Tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin3)守则: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');

呼如林

第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;
随时随地看视频慕课网APP

相关分类

MySQL
我要回答