测试脚本如下:
CREATE TABLE test ( title varchar(45) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
INSERT INTO test (title) value ('');
回复说:
1366 Incorrect string value: '\xF0\x9F\x8E\x89\xF0\x9F...' for column 'title' at row 1.
我尝试将CHARSET
设置为utf8
,utf16
,gbk
,但回复相同。
我不知道该怎么称呼这些字符''并用键盘输出它们。但它们与'♥☆'不同,它可以存储在charset utf8
中。
感谢。
答案 0 :(得分:0)
您的值保存为二进制文件,因此您可以将列title
的数据类型更改为blob
。
答案 1 :(得分:0)
您可以将列类型设置为BINARY或VARBINARY。
答案 2 :(得分:0)
CHARACTER SET utf8mb4
。 utf8
是不够的。