成功连接后,我正试图从我的存储过程中获取数据。但是下面的代码只是成功返回SP的最后一个结果集,而不是所有集合。
$dbh = new PDO (.....);
$sth = $dbh->prepare("EXEC ......");
$sth->execute();
while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
print_r($result);
}
我需要在代码中添加任何内容吗?
感谢。
答案 0 :(得分:0)
如果您想要Firebird存储过程中的多行,则需要从中选择而不是执行它。虽然IIRC你只会在执行时获得第一个结果,这与你在问题中所说的相反。
所以使用:
select * from your_procedure()