我需要修复此错误。当前的PHP MySQL库版本5.1.72和排序规则是utf8_general_ci
Error inserting into table: notes: Query Failed: INSERT INTO notes (id,date_entered,date_modified,modified_user_id,created_by,name,file_mime_type,filename,parent_type,parent_id,portal_flag,embed_flag,deleted)
VALUES
('caff0041-48a4-218d-c596-566a8b42549b','2015-12-11 08:38:26','2015-12-11 08:38:26','e982b37c-4773-11e3-9be9-00215aeeb772','e982b37c-4773-11e3-9be9-00215aeeb772','OutlookEmoji-.png','image/PNG','OutlookEmoji-.png','Emails','c1ba0bf7-cb38-701a-270e-566a8b7a23c2',0,0,0): MySQL error 1366: Incorrect string value: '\xF0\x9F\x98\x8A.p...' for column 'name' at row 1
提前致谢。
答案 0 :(得分:0)
为您的数据库设置数据库归类为utf-8
。
您收到错误,因为您正在插入OutlookEmoji-.png
更改排序规则后,运行查询。
答案 1 :(得分:0)
看起来您尝试在字段名称中插入无效字符:OutlookEmoji-.png
答案 2 :(得分:0)
This may answer your question。即,
如果你有MySQL 5.5或更高版本,你可以改变列编码 utf8到utf8mb4。此编码允许存储字符 占用UTF-8中的4个字节。
但是你有5.1,
虽然您的排序规则设置为utf8_general_ci,但我怀疑是 数据库,表或甚至列的字符编码可能是 不同。它们是独立的设置。