gpt4 book ai didi

php - SELECT 查询的 PDO 语法错误

转载 作者:行者123 更新时间:2023-11-29 01:58:48 25 4
gpt4 key购买 nike

我有一个获取所有字段并导出文件的基本查询,但它一直给我一个错误。我的代码如下所示:

$array = ['users'];

foreach($array AS $i){
$file = $i.'.sql';

$stmt = $pdo->prepare("SELECT * FROM ? INTO OUTFILE ?");
try {
$stmt->execute(array($i,$file));
} catch (PDOException $e) {
$log .= $e -> getMessage().'........ \n ';
}
}

我总是收到这个错误:

SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有误;查看与您的 MySQL 服务器版本对应的手册,了解在第 1 行的“users” INTO OUTFILE 'users.sql'' 附近使用的正确语法。

正确的语法是什么?

最佳答案

它(语法)应该反过来

SELECT * INTO OUTFILE ? FROM ?;

参见文档 here

编辑:

作为JAL澄清一下,表名不能作为 PreparedStatement 下的参数传递。所以你的查询应该是这样的

SELECT * INTO OUTFILE ? FROM users;

关于php - SELECT 查询的 PDO 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20726613/

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