PHP 脚本不会将 CSV 导入 MySQL


PHP script doesn't import CSV into MySQL

# download the file off the internet
    $file = file_get_contents("http://localhost/sample.csv");
    $filepath = "C:/xampp/htdocs/test/file/sample.csv";
    file_put_contents($filepath, $file);
# load the data into sample table
    $pt1 = "LOAD DATA LOCAL INFILE ";
    $pt2 = "'/C:/xampp/htdocs/test/file/sample.csv' INTO TABLE sample ";
    $pt3 = "FIELDS TERMINATED BY ',' ENCLOSED BY ''"' ";
    $pt4 = "LINES TERMINATED BY ''r'n' ";
    $pt5 = "(col1,col2,col3,col4)";
    $sqlquerynew = $pt1.$pt2.$pt3.$pt4.$pt5;
    mysql_query($sqlquerynew);

这段代码适用于非csv(好吧,我用文本文件测试了它)。

在运行此部分之前,我必须创建一个表。现在已创建表,但未加载任何数据。路径中声明的文件存在。

可能是什么问题?

谢谢

这是我在网上找到的示例 csv

"REVIEW_DATE","AUTHOR","ISBN","DISCOUNTED_PRICE"
"1985/01/21","Douglas Adams",0345391802,5.95
"1990/01/12","Douglas Hofstadter",0465026567,9.95
       ....... etc

两个问题

$pt2 = "'/C:/xampp/htdocs/test/file/sample.csv' INTO TABLE sample ";

取下 C 前面的/

其次,

$pt5 = "(col1,col2,col3,col4)";

确保列的名称正确。如果要导入*所有列,只需将其删除即可。在您的情况下删除标题也是一个好主意,因为删除$pt5您将成功,但标题行将添加到表中。