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

[已解决]如何解决插入mysql数据库时报不支持的字符错?

[已解决]如何解决插入mysql数据库时报不支持的字符错?

PHP
扬帆大鱼 2019-03-14 03:19:11
直接正则过滤好了 $text = preg_replace('/[\x{10000}-\x{10FFFF}]/u', '', $text); ======= 我数据库表编码是utf8_general_ci 当插入数据时有特殊字符时就报错了: An exception occurred while executing 'UPDATE user_order SET update_time = ?, memo = ? WHERE id = ?' with params [1513996274, \"\\u5fae\\u4fe1 \\ud83c\\udf4eDGTyy\", 224]:\n\nSQLSTATE[HY000]: General error: 1366 Incorrect string value: '\\xF0\\x9F\\x8D\\x8EDG...' for column 'memo' at row 1
查看完整描述

1 回答

?
GCT1015

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

建议全部转为utf8mb4编码。

ALTER TABLE <table_name> CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
查看完整回答
反对 回复 2019-03-18
  • 1 回答
  • 0 关注
  • 448 浏览

添加回答

举报

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