UTF 8 - 错误1366(HY000) - 数据插入时字符串值不正确

时间:2015-01-29 17:39:04

标签: mysql encoding utf-8 character-encoding

Utf8 整理我的母语排序“utf_slovak_ci” 不允许我插入带有特殊字词的字词“ľ,š,š,č,ť,ž,ý,á,í,é,ô,ň,ä”等字符,这些字符特定于我的语言。

整个情况如下图所示:

哪里可能是问题?我应该切换字符集吗?如果是,那么使用哪一个?或者是我看不到的任何其他问题?

我在这个主题上阅读了很多关于Q& A的内容,但似乎没有人回答我的问题。我唯一意识到的可能是,“cmd.exe”可能存在问题。但是切换到“cp850”“cp1250”也无济于事。

2 个答案:

答案 0 :(得分:0)

我认为问题是你写的sql的字符集......

  1. 将SQL写入文件。 但请考虑一下,将文件保存为UTF-8编码。

  2. 之后,使用以下命令从文件导入sql

  3. mysql -u [USERNAME] -p [DATABASENAME] < /[DIRECTORY]/SQLFILE.sql

答案 1 :(得分:0)

如果在mysql shell中没有任何效果,请尝试更改mysqld.cnf中的某些设置

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4

答案终于在MySQL utf8mb4, Errors when saving Emojis中找到了我