PDO连续query()失败问题
Posted 小昌君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PDO连续query()失败问题相关的知识,希望对你有一定的参考价值。
设置了非缓冲查询(PDO::mysql_ATTR_USE_BUFFERED_QUERY)以后,连续query会导致下一次结果为false
$conn = "mysql:host=127.0.0.1;dbname=test_lkc"; $db = new PDO($conn, ‘root‘, ‘root‘); $db->query("set names utf8"); $db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false); $delSql = "SELECT * FROM test_table"; $i=1; while ($i < 3){ $i++; $res = $db->query($delSql); var_dump($res); }
解决办法
1、每次query的结果用完以后,unset()或者重新赋值
2、query以后的结果我们一般会用fetch()函数去获取结果,如果用while($res->fetch())不会出现上诉问题
以上是关于PDO连续query()失败问题的主要内容,如果未能解决你的问题,请参考以下文章