标题:General error: 2053和General error: 2050问题的解决 出处:BIWEB开源PHP WMS系统创始人ArthurXF肖飞的blog 时间:Tue, 04 Dec 2007 20:06:27 +0000 作者:ArthurXF 地址:http://www.bizeway.net/read.php/267.htm 内容:   我把PHP升级到了5.2.5版本以后,以前写的PDO程序总是报错SQLSTATE[HY000]: General error: 2053 ,我查了很久才找到问题的解决办法。  这样的问题只会发生在两条SQL连续请求的时候,如下面的例子:引用 $s = $db->query("SELECT * FROM test ORDER BY poledrugie;"); var_dump($s->fetchAll()); $s = $db->query("SELECT * FROM test ORDER BY poletrzecie;"); var_dump($s->fetchAll()); 这样就会报错的。两种修改方法: 1.将第二个SQL的句柄换成$s1.引用 $s = $db->query("SELECT * FROM test ORDER BY poledrugie;"); var_dump($s->fetchAll()); $s1 = $db->query("SELECT * FROM test ORDER BY poletrzecie;"); var_dump($s1->fetchAll()); 2.在第二个SQK前,将$s清空。引用 $s = $db->query("SELECT * FROM test ORDER BY poledrugie;"); var_dump($s->fetchAll()); $s = ''; $s = $db->query("SELECT * FROM test ORDER BY poletrzecie;"); var_dump($s->fetchAll());   其实可以得出一个结论,如果两个PDO请求赋值给同一个句柄,那么第二个句柄不会被覆盖掉。所以必须我们手动覆盖一次。   以上文章为ArthurXF倾情奉献,谢谢支持! 现在ArthurXF本人正在搞PHP等技术培训,如果想学习的人可以跟我联系。另外培训的招生简章在这个网址,想了解的可以去看看。 PHP培训招生简章 Generated by Bo-blog 2.0.3 sp1