Excel CSV字符串未完全上载到Excel

时间:2015-04-30 18:01:37

标签: mysql excel csv

我在Excel中有这个字符串(我用UTF编码它)当我保存为CSV并导入到MySql时我只得到以下内容,我知道这可能是一个字符集问题,但你能解释一下为什么因为我很难理解它。

在Excel单元格中:

PARTY HARD PAYDAY SPECIAL â UPTO £40 OFF EVENT PACKAGES INCLUDING HOTTEST EVENTS! MUST END SUNDAY! http://bit.ly/1Gzrw9H

结束于DB:

PARTY HARD PAYDAY SPECIAL

该字段的结构为utf8_general_ci编码和VARCHAR(10000)

1 个答案:

答案 0 :(得分:0)

Mysql不支持完整的unicode utf8。有一些4字节字符无法处理,我猜,正确存储在常规utf8中。我假设在导入时它会截断SPECIAL之后的值,因为mysql不知道如何处理或存储该字符串之后的字符串。

为了处理4字节字符的完整utf8,你必须切换到utf8mb4。

这是来自mysql文档:

  

名为utf8的字符集每个字符最多使用三个字节,仅包含BMP字符。 utf8mb4字符集每个字符最多使用四个字节,支持补充字符...

您可以在此处阅读更多内容@dev.mysql

另外,Here是关于mysql中reg-utf8问题以及如何切换到utf8mb4的详细解释。