【问题标题】:CSV to mysql loadingCSV 到 mysql 加载
【发布时间】:2012-01-03 17:41:33
【问题描述】:

我正在尝试将此 csv 文件上传到我的主机上的 mysql。

csv 由两列组成:

alias, id

然后每一行都包含数据。

这是一张图片

但是mysql拒绝了我。 这是为什么呢?

【问题讨论】:

  • MySQL 如何或拒绝什么?这实际上是 csv 文件还是 Excel 文件?
  • 如果您尝试上传 csv 文件,则必须在导入部分选择 CSV 格式。要么提及您使用哪种工具与版本一起使用,要么让我们知道它拒绝了什么(错误代码)..
  • csv 没有列。要么显示 excel 工作表,要么没有将其导出为 csv。

标签: php mysql sql csv


【解决方案1】:

创建一个包含两个字段“alias”和“id”的表“test_table”,然后执行这个命令:

LOAD DATA LOCAL INFILE '/importfile.csv'
INTO TABLE test_table
IGNORE 1 LINES
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(alias, id);

如果您使用的是 phpMyAdmin,请使用 phpMyAdmin 的导入选项。选择 CSV 文件格式

【讨论】:

    【解决方案2】:

    您也可以从 excel 打开 csv 并生成一系列插入语句。不是最好的解决方案,但如果您正在寻找快速而肮脏的东西,它可能会很有用。

    【讨论】:

      【解决方案3】:

      使用 PHP 的解决方案

      $file = 'path/to.csv'; 
      
      $lines = file($file);
      $firstLine = $lines[0];
      foreach ($lines as $line_num => $line) {
          if($line_num==0) { continue; } //escape the header column
          $arr = explode(",",$line);
          $column1= $arr[0];
          $column2= $arr[1];
             
          echo $column1.$column2."<br />";
              //put the mysql insert statement here
      }
      

      【讨论】:

        猜你喜欢
        • 2013-07-21
        • 1970-01-01
        • 2023-04-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-26
        • 2014-01-19
        • 2017-04-19
        相关资源
        最近更新 更多