gpt4 book ai didi

php - php PDO 可以获取两个结果集吗?如果是,那么 1 个结果集或多于 1 个结果集哪个更好?

转载 作者:可可西里 更新时间:2023-11-01 07:46:55 26 4
gpt4 key购买 nike

如果可能,我如何获取两个结果集:

$sth=$dbh->prepare("SELECT * FROM tb1 WHERE cond1;
SELECT * from tb2 Where cond2");
$sth->execute();
$row=$sth->fetchAll(); print_r ($row);

这是两个完全不同的表(没有共同的字段)。

最佳答案

是的 PDO 可以获取两个(或更多)行集,只要您使用的数据库支持它。我认为 MS SQL ServerMySQL 都支持此功能,但在撰写本文时 SQLite 不支持。

你要的函数是PDOStatement::nextRowset

所以在你上面的例子中,你可以做类似的事情;

$sth = $dbh->prepare("SELECT * FROM tb1 WHERE cond1;
SELECT * FROM tb2 WHERE cond2");
$sth->execute();
$rowset1 = $sth->fetchAll();
$sth->nextRowset();
$rowset2 = $sth->fetchAll();

print_r($rowset1);
print_r($rowset2);

单个存储过程返回多个行集是完全合理的。

关于php - php PDO 可以获取两个结果集吗?如果是,那么 1 个结果集或多于 1 个结果集哪个更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18025060/

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