在Notepad ++中转换为UTF8导致MySQL导入中的整数错误?

时间:2014-04-08 19:23:12

标签: mysql utf-8 notepad++

我目前正在开发一个需要为公司进行大量数据迁移的项目。我们正在计划和测试从现有Access数据库到他们将使用的CRM的MySQL数据库的数据导入。

我们遇到了以.csv格式导入(使用Load Data Infile)导出数据的错误,当记录带有重音或由于导入的文件为ANSI格式而导致特殊字符时(MySQL数据库的其余部分全部在UTF8)。我设法通过在Notepad ++中使用转换为UTF8功能来修复此问题,但这是在我知道我们需要导入Access数据库中的现有主键ID之前。

使用添加的ID执行相同的过程会导致抛出MySQL错误:

Error Code: 1366. Incorrect integer value: '135' for column 'id' at row 1

有没有办法将所有这些数据转换为UTF8而不会产生整数值抛出错误?

1 个答案:

答案 0 :(得分:1)

将文件转换为 UTF-8无BOM ,然后重试:)

诀窍是,在UTF-8文件的开头有一个BOM sequence,你文件开头的数字135实际上是0xEF 0xBB 0xBF 1 3 5导致TSV导入程序错误的原因是不知道UTF-8。