使用My SQL Workbench表导入向导将.csv导入MySQL数据库时出错



我正处于尝试将Google Sheets中的一些数据移动到MySQL数据库的初始阶段。我从一张包含一些用户数据的工作表开始。我将工作表保存为csv,然后通过MySQL Workbench的表导入向导选择该csv。

当我这样做时,我收到以下错误:

未处理的异常:"ascii"编解码器无法解码位置中的字节0xc3178:序号不在范围内(128(

一些初步的故障排除向我透露,我认为问题是名称中的一个字符——一个名为Aimée的法国用户。根据错误消息,我一直试图在下载为csv之前将谷歌表单数据转换为utf-8(而不是ASCII(,但我读到的所有内容似乎都表明,简单地下载为.csv就可以解决问题。

复制步骤:

  1. 以.csv格式下载Google Sheet
  2. 打开MySQL Workbench并选择现有表
  3. 选择表数据导入向导
  4. 出现提示时,选择我刚刚保存为源文件的.csv文件
  5. 选择MySQL数据库中的现有表作为目标表
  6. 单击";接下来";,并接收错误

这里可能有两个错误。假设你想要一个";acute-e";,您得到的是这样的十六进制C3A9的utf8编码。然后,因为有东西在期待腹水,它抱怨C3

如果您有一个现有的MySQL表,请执行SHOW CREATE TABLE检查列的字符集。如果列没有字符集,则表的DEFAULT CHARACTER SET将接管。我怀疑其中一个是";ascii";。

将其更改为utf8mb4

如果您遇到进一步的问题,这可能会派上用场:UTF-8字符的问题;我看到的不是我存储的

最新更新