在PDO多查询中获取最后一个请求

问题描述 投票:1回答:2

如果有PDO多重查询,如何获取最后查询的结果?

这里是示例代码

$sql = <<<OEF
    CREATE TEMPORARY TABLE SELECT * FROM table WHERE ...;

    SELECT * FROM table WHERE ...
OEF;

$stmt = $pdo->prepare($sql);
$stmt->execute($params);

while ($row = $stmt->fetch()) {
    //not work
}

[PDO::ATTR_EMULATE_PREPARES设置为true,以便一次执行许多查询。

php mysql pdo
2个回答
2
投票
只需在单独的调用中运行查询。它将是更加干净和强大的解决方案

$stmt = $pdo->prepare("CREATE TEMPORARY TABLE SELECT * FROM table WHERE ..."); $stmt->execute($params1); $stmt = $pdo->prepare("SELECT * FROM table WHERE ..."); $stmt->execute($params2); while ($row = $stmt->fetch()) { // everything is all right }


0
投票
写一个存储过程。因此,您可以使用临时表做更多的事情
© www.soinside.com 2019 - 2024. All rights reserved.