如何记录错误&使用“加载数据infile”时将其写入日志文件?

时间:2012-04-27 08:19:04

标签: php mysql

我在使用“加载数据本地infile”从CSV文件导入数据时遇到问题。 当某些记录存在约束问题时,整个记录都无法插入。

我用过:

$sql = "LOAD DATA LOCAL INFILE ...";
$exec = mysql_unbuffered_query($sql);
if ($exec === false) {
    echo "mysql_error : ".mysql_error()."<br/>";
}
else {
    echo "Success execute";
}

但它一直在终止查询。

我希望继续为某些存在约束问题的记录插入之外的记录,并使用PHP捕获/记录错误+数据到日志文件。

有可能实现吗?

1 个答案:

答案 0 :(得分:1)

试试这个:

<?php

$sql = "LOAD DATA LOCAL INFILE ...";
$exec = mysql_unbuffered_query($sql);
if ($exec === false) {
    $error_message = "mysql_error : ".mysql_error()."\n";
    error_log($error_message, 3, "your_log_file.txt");
}
else {
    echo "Success execute";
}

?>

P.S。并尝试接受@ManseUK提到的答案;这表明您尊重社区(社区将非常乐意为您提供更多帮助,下次......)