第 1 行 phpmyadmin 上的 CSV 输入中的字段计数无效

dmw*_*esq 3 csv import phpmyadmin

我已经阅读了很多主题,但找不到正确的具体答案。当我尝试将其他数据导入现有表时,我收到此错误消息。字段名称都正确对齐,但并非每一行的每个字段中都有数据。例如,虽然我有一个名为 middle_name 的字段,但并不是每一行都有一个中间名。在导入过程中,这个空白字段是否不计为字段,从而丢弃字段计数?

通过确保我有一个空白列以允许 ID 的自动递增,以及将标题行保留在文件中但选择 1 行跳过导入,我设法获得了大部分数据以进行导入。

现在的问题是最后一行无法导入 - 在第 19 行收到错误消息 Invalid format of CSV input。当我将文件复制到 Text Wrangler 时,最后一行以 ,,,,, 结尾。这说明了最后 5 列是空白的。我需要知道导入最后一行的诀窍是什么。

以下是我一直在使用的设置:

设置

use*_*673 5

从旧版本的 phpMyAdmin 升级后,我遇到了类似的问题(使用制表符分隔的文件)。以下几点可能会有所帮助:

  • phpMyAdmin 必须有正确的列数。在旧版本的 phpMyAdmin 中,您可以避免不为行尾的列提供空值,但情况已不再如此。
  • 如果您将 Excel 文件导出为文本并且行首或行尾的列完全为空,则 Excel 将不会为这些行导出空白。您需要输入一些内容,或者留空,然后在文本编辑器中使用正则表达式编辑生成的文件,例如添加一个空白的第一行,搜索^并替换为,(CSV 文件)或\t(标签文件);将两列添加到最后搜索$并替换为,,\t\t等。
  • 在文件底部添加一个空行,以避免出现引用最后一行数据的错误消息。这似乎是已在较新版本中修复的错误
  • 在文本编辑器中,还要检查文件编码,因为 Excel 有时会保存为 UTF-16 和 phpMyAdmin 不喜欢的 BOM 之类的东西。