【问题标题】:Importing .csv file into mysql in php在php中将.csv文件导入mysql
【发布时间】:2013-01-05 05:52:22
【问题描述】:

我有一个 .csv 文件,但我无法将其导入数据库。我已经使用以下查询解析了我的 .csv 文件。你能帮我如何将数据插入MySql。

我的代码是:-

$fp = fopen('test.csv','r') or die("can't open file");
print "<table>\n";

while($csv_line = fgetcsv($fp,1024)) 
{
    print '<tr>';
    for ($i = 0, $j = count($csv_line); $i < $j; $i++) {

        print '<td>'.$csv_line[$i].'</td>';
        $data[] = $csv_line[$i];
    }
    print "</tr>\n";
}
print '</table>\n';
fclose($fp) or die("can't close file");

【问题讨论】:

标签: php mysql csv


【解决方案1】:

在 MySQL 中,我们可以非常轻松地将数据从 CSV 文件导入到表中:

LOAD DATA LOCAL INFILE 'import.csv' INTO TABLE from_csv FIELDS TERMINATED BY ','  LINES TERMINATED BY '\n'  (FIELD1, FIELD2, FIELD3);

http://dev.mysql.com/doc/refman/5.0/en/load-data.html

示例: http://www.techtrunch.com/linux/import-csv-file-mysql-table

【讨论】:

    【解决方案2】:

    代码似乎将 csv 文件作为表格数据表导出到浏览器。

    您提到导入到 mysql 表中,但没有列出 mysql 信息。创建一个 mysql 表并尝试将您要导入的字段映射到表中的数据库字段。对我来说最简单的方法是使用 phpmyadmin 来生成加载数据 sql,尽管如果您理解到足以更改它,答案中提到的加载数据本地 infile 也可以工作。

    当我学会如何做时,我使用了本教程。 http://vegdave.wordpress.com/2007/05/19/import-a-csv-file-to-mysql-via-phpmyadmin/

    【讨论】:

    • 嘿,谢谢,但我的疑问是如何使用插入查询手动插入数据库。在上面的代码中,我已经读取了 csv 文件并将数据转换为数组格式,但我面临的问题是将该数组插入 db
    • 是的,phpmyadmin 将为您完成所有这些工作。您只需选择 csv 文件,它就会导入,您可以在几分钟内完成。如果您需要多次做某事,那可能就是另一回事了。
    【解决方案3】:

    您可以使用此代码。我希望这会有所帮助
    //从上传文件字段上传csv文件后
    $handle = fopen($_FILES['csvfile']['tmp_name'], "r");

    $header = fgetcsv($handle);

    while(!feof($handle)){

    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {

    $import="INSERT 到 csvtest($header[0], $header[1], $header[2], $header[3], $header[4], $header[5],$header[ 6]) 值 ('$data[0]', '$data[1]', '$data[2]', '$data[3]', '$data[4]', '$data[5] ]', '$data[6]')";

    mysql_query($import) or die(mysql_error());

    }

    }

    fclose($handle);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-10
      • 1970-01-01
      • 2017-01-21
      • 1970-01-01
      • 2014-01-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多