ALTER TABLE TableName MODIFY COLUMN ColumnName varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;
尝试将列的字符集更改为反映您要插入的字符串的字符集值。
例如:
ALTER TABLE database.table MODIFY COLUMN col VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
我遇到了同样的问题并解决了它。
错误的原因是字符串包含表情符号。
utf8mb4
,排序规则设置为 utf8mb4_general_ci
utf8mb4
,例如:charset=utf8mb4
utf8mb4_unicode_ci
,不确定问题是什么。 - William Isted