gpt4 book ai didi

php - Load Data Infile 出现无缓冲查询错误

转载 作者:行者123 更新时间:2023-11-29 16:08:44 25 4
gpt4 key购买 nike

我正在关注这里的教程:https://mikaelhoundegnon.wordpress.com/2018/05/02/work-around-of-mysql-load-data-infile-with-on-duplicate-key-update/ 。请注意,以防万一,我正在使用 Laravel 的查询生成器,但对这些特定查询执行原始语句。

我的代码如下:

$sql = "CREATE TEMPORARY TABLE temporary_part SELECT * FROM part WHERE 1=0";
$con->statement($sql);

$sql = "LOAD DATA INFILE '$filePath'
INTO TABLE temporary_part
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"'
(field1,field2,field3,field4)";
$con->statement($sql);

然后我收到以下错误:

SQLSTATE[HY000]:一般错误:2014 当其他未缓冲的查询处于事件状态时无法执行查询。考虑使用 PDOStatement::fetchAll()。或者,如果您的代码仅针对 mysql 运行,您可以通过设置 PDO::MYSQL_ATTR_USE_BUFFERED_QUERY 属性来启用查询缓冲。 (SQL:将数据 INFILE '/path/to/file.csv' 加载到表临时部分字段,终止于 ',' 可选地包含于 '"' (field1,field2,field3,field4))

除了所提供的代码中发生的情况之外,没有任何其他开放查询。我已经确认是 LOAD DATA INFILE 查询引发了错误。我在这里做错了什么吗?

最佳答案

事实证明这实际上是 Laravel Facade DB::connection() 问题。显然,对于 LOAD DATA INFILE 查询,使用 statements() 执行原始语句还不够好,而必须使用 DB::connection()->getPdo()->exec($sql);

关于php - Load Data Infile 出现无缓冲查询错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55486172/

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