【问题标题】:Invalid field count in CSV input on line 1第 1 行的 CSV 输入中的字段计数无效
【发布时间】:2011-09-04 09:39:34
【问题描述】:

我正在尝试将 ODS 文件导出到 CSV,但是当我导入 phpmyadmin 时 - 我得到“第 1 行的 CSV 输入中的无效字段计数”。

文件(多于两行但方案相同):

"Administração da Guarda Nacional Republicana"
"Administração de Publicidade e Marketing"

表:

CREATE TABLE IF NOT EXISTS `profession` (
  `id_profession` int(11) NOT NULL,
  `profession` varchar(45) DEFAULT NULL,
  `formation_area_id_formation_area` int(11) NOT NULL,
  PRIMARY KEY (`id_profession`),
  UNIQUE KEY `profession_UNIQUE` (`profession`),
  KEY `fk_profession_formation_area1` (`formation_area_id_formation_area`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

我从来没有做过类似的事情,可能我需要指定列。 csv 只有一列,表有三。在这种情况下,文件输入属于职业列

【问题讨论】:

  • 很明显,数据格式错误,缺少必填字段。你不能导入它。
  • 那么,我不能导入特定的列吗?必须是本例中的三个字段?

标签: mysql csv import phpmyadmin load-data-infile


【解决方案1】:

如果您希望将其导入该表,您有 2 个选择:

1) 在文件每一行的数据前后添加逗号,或

2) 删除表中的第一列和第三列,导入数据,然后将删除的 2 列添加回来。

【讨论】:

    【解决方案2】:

    如果您使用 phpMyAdmin,那么您可以指定列名。登录所需数据库时:

    1. 选择要导入的表。
    2. 点击导入标签。
    3. 导入文件格式下,选择CSV
    4. 列名中,写出您希望数据导入到的列的逗号分隔列表。

    如果你喜欢 shell,你也可以使用 mysqlimport。

    例如:

    shell>mysqlimport --columns=column1,column2 dbname imptest.txt
    

    【讨论】:

      【解决方案3】:

      确保您上传的 csv 文件不是 excel 文件,然后按照以下步骤操作

      1 导入

      2 浏览您的 csv 文件。

      3 使用 LOAD DATA(而不仅仅是 CSV)选择 CSV

      4 将“字段终止于”从“;”更改到“,”

      5 确保选中“使用 LOCAL 关键字”。

      Click “Go”
      

      【讨论】:

        【解决方案4】:

        在 Excel 中,我将文件保存为“Microsoft Office Excel 逗号分隔值文件 (.csv)”

        在 Phpmyadmin 中:

        1. 选择要导入表的数据库。
        2. 点击导入选项卡。
        3. 选择您的文件。将格式设置为 CSV
        4. 如果需要,请保留格式特定选项,除非勾选“文件的第一行包含表列名称”框
        5. 点击开始
        6. 然后您需要重命名该表(如果它是数据库中的第 5 个表,它将被称为“TABLE 5”)。所以选择表格并使用操作选项卡 -> “将表格重命名为:”

        【讨论】:

          【解决方案5】:
          1. 转到导入选项卡

          2. 浏览 csv 文件。

          3. 在导入文件选项卡的格式上选择“CSV”

          4. 清单“忽略重复行”

          5. 将“字段终止于”从“;”更改到“,”

          注意:你最好检查已经导入的数据。数据的第一行通常包含您导入到 csv 文件的表格中每一列的标题。导入csv文件后删除第一行

          【讨论】:

            【解决方案6】:

            你需要勾选“文件的第一行包含表列名(如果不勾选,第一行将成为数据的一部分)”,然后点击“GO”。

            【讨论】:

              猜你喜欢
              • 2014-03-21
              • 1970-01-01
              • 2013-04-21
              • 2014-05-29
              • 1970-01-01
              • 2021-01-17
              • 2020-09-09
              • 2013-11-10
              • 1970-01-01
              相关资源
              最近更新 更多