gpt4 book ai didi

php - 加载 INFILE 时如何知道 csv 中的哪一行出错?

转载 作者:行者123 更新时间:2023-11-29 01:59:46 27 4
gpt4 key购买 nike

简单的代码

$loadsql = "LOAD DATA LOCAL INFILE '$target_path'
INTO TABLE `test`
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '\"'
IGNORE 1 LINES";
$result = mysql_query($loadsql);

代码运行良好。但我很好奇我怎么知道 csv 中是否有一行错误,那是哪一行?

最佳答案

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

With LOAD DATA LOCAL INFILE, data-interpretation and duplicate-key errors become warnings and the operation continues because the server has no way to stop transmission of the file in the middle of the operation. For duplicate-key errors, this is the same as if IGNORE is specified. IGNORE is explained further later in this section.

您确定没有报告警告吗?要查看它们,请尝试使用 SHOW WARNINGS在你的 mysql 控制台中。

PS/Warning 附加到 session - 您只能从您加载数据文件的 session 中显示它们。

PS2/就像在 , MySQL warningserrors 不同,因为它们不会停止当前操作。但它们通常表明出现了问题,应该对其进行调查。至于 LOAD DATA INFILE 的具体情况,正如文档明确指出的那样,选择报告警告而不是错误只是因为没有(优雅的)服务器方式来决定文件传输一旦开始就停止。

关于php - 加载 INFILE 时如何知道 csv 中的哪一行出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18205145/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com