【发布时间】:2017-09-08 23:57:31
【问题描述】:
我正在尝试执行 MySQL 插入操作,但收到如下错误消息:
不正确的字符串值:第 1 行的列 'foo' 的 '\xA0'
\xA0 和 \x96 都会出现这种情况。
我正在使用 PHP,并将此查询传递给 mysqli_query():
INSERT INTO ttest1 (foo) VALUES("test\xA0")
这里是创建表:
创建表 ttest1 (
test_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
foo VARCHAR(32))
这是 MySQL 的字符集和排序规则信息:
character_set_client utf8mb4 character_set_connection utf8mb4 character_set_database utf8 character_set_filesystem 二进制 character_set_results utf8mb4 character_set_server utf8 character_set_system utf8 collation_connection utf8mb4_unicode_ci collation_database utf8_general_ci collation_server utf8_general_ci
foo 列的排序规则是 uft8_general_ci。
那么为什么我在这个设置中会出现这个错误,最好的解决方法是什么?
【问题讨论】:
标签: mysql special-characters collation