我试图插入一个代理项对(“·”,
\uD852\uDF62
与…一样
U+24B62
从…起
this example
)进入
.
INSERT
使用未替换的文字,由建议
this answer
:
INSERT INTO unicode_test (value) VALUES ('ð¤¢');
-- or
INSERT INTO unicode_test (value) VALUES (_utf8'ð¤¢');
Error Code: 1366. Incorrect string value: '\xF0\xA4\xAD\xA2' for column 'value' at row 1
(请注意
\xF0\xA4\xAD\xA2
甚至都不接近
).
另一方面,两者
INSERT INTO unicode_test (value) VALUES (_utf16'ð¤¢');
INSERT INTO unicode_test (value) VALUES (_utf8mb4'ð¤¢');
成功,但插入的值与原始值不同。
我的数据库使用
utf8mb4
字符集,所以我认为它应该透明地处理代理。
MySQL
?