我有以下语句,但它们返回空结果集:
$sql = 'SELECT * FROM `industry` WHERE `code` LIKE ?';
$statement = $this->getAdapter()->createStatement($sql, array('A_'));
$statement->execute();
我究竟做错了什么?我真的不想使用Zend \ Db \ Sql \ Sql,因为它非常冗长。
与此相关的是,在哪里可以找到有关Zend \ Db的工作原理的更多信息?这绝对令人发疯。为什么有时会返回驱动程序结果?有时是ResultSet?您如何查看完整的SQL(在引用之后但在执行之前?)等等。
好的,我错过了Result是可迭代的(以及ResultSet)这一事实。因此,将$ statement-> execute()的结果分配给一个变量,然后对该变量进行迭代,以解决问题。
此外,您可以调用getResource()
结果对象,然后从那里访问基础对象(在本例中为PDO语句)。这意味着您可以做类似的事情result->getResource()->fetchAll()
;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句