为什么没有数据插入MySQL?

时间:2016-10-15 20:38:27

标签: php mysql csv

我正在将超过4,000个CSV文件导入MySQL。我正在使用的代码完全适用于前2,750个CSV文件 - 数据插入MySQL就好了。但是,在最初的2,750个文件之后,数据没有被插入到MySQL中,即使(a)CSV中的数据格式/类型没有改变(b)MySQL显示成功的数据插入,没有错误。到底是怎么回事?这可能与数据库的大小有关 - 在2,750个CSV插入后大约180 GB。相关代码如下。

$query = "LOAD DATA LOCAL INFILE '$csvfilelocation' INTO TABLE xxx FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 LINES (@col1,@col2,@dummy,@dummy,@col5,@col6) set abc=@col1,efg=@col2,hij=@col5,klm=@col6";

$status = mysqli_query($con,$query) or die(mysqli_error($con));

//If successful insert, mark the CSV as imported
$filename = $csvfilelocation;
if ($status) {
    $stmt = mysqli_prepare($con, "UPDATE xxx_list SET putindatabase = 1 WHERE filename = ?");
    mysqli_stmt_bind_param($stmt, "s", $filename);
    mysqli_stmt_execute($stmt);
    mysqli_stmt_close($stmt);
}

1 个答案:

答案 0 :(得分:0)

我从未弄清楚为什么会这样。我通过将CSV拆分为不同的数据库而不是将它们全部放在一起来解决了我的问题。