php - 将 CSV 导入数据库,插入而不截断表

标签 php mysql

我这里有这段代码,它允许我将数据从 csv 文件导入数据库,现在它所做的是在插入之前截断表,我之前尝试删除截断表但后来它不会'传递数据。我的意思是我怎样才能在这里修改这段代码?我只需要它来插入数据,而不需要清空当前表!

谢谢..

$deleterecords = "TRUNCATE TABLE imovo"; //empty the table of its current records
mysql_query($deleterecords);

//Upload File
if (isset($_POST['submit'])) {
    if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
        echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>";
        echo "<h2>Displaying contents:</h2>";
        readfile($_FILES['filename']['tmp_name']);
    }

    //Import uploaded file to Database
    $handle = fopen($_FILES['filename']['tmp_name'], "r");

    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $import="INSERT into imovo(date,time,location,rbpos_id,mobile_number) values('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]')";

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

    fclose($handle);

    print "Import done";

    //view upload form
}else {


}

最佳答案

“我之前尝试删除截断表,但它不会传递数据。”

可能是因为您有唯一索引并尝试插入重复记录。

关于php - 将 CSV 导入数据库,插入而不截断表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12212201/

相关文章:

php - 邮枪 : Cancel queued emails

mysql - 使用 CONCAT() 将列值合并到列中

mysql - 在sql中比较同一个表中的两列时如何选择

php - PDOException 仅在某些用例中

php - 如何通过mysql查询获取表结构及其数据?

javascript - 使用 PHP include 获取本地 js kosher?

PHP session 不会过期。曾经

php - 了解 zend_execute API

javascript - 让 URL 开始选择下拉列表

MySQL 将行转为动态数量的列