2010-10-10 108 views
1

我正在使用Zend和postgres数据库,并且我想从内部具有多个命令的sql查询中获取结果。 我真正想要的是创建一个包含一些数据的表格,然后在同一个语句中查询所有查询中的数据。将多个命令插入到一个准备好的语句中的错误

,但在执行时,我得到这个错误:

错误:无法插入多个命令插入事先准备好的声明

我已经找到一种方法来解决它插入“/”前的第二个命令,但它不起作用。

在此先感谢您的帮助或建议!

回答

1

如果你在这里粘贴你的代码,这样会更有帮助。

我不确定你所指的实际上是一个sql查询。你似乎在做的是将一些SQL命令(如create,insert和select)附加到一个准备好的语句中!相反,您需要单独发送这些命令或创建单独的准备好的语句。就我所知,postgres在一次准备调用中禁止多个SQL命令。

4

PHP PDO驱动程序does not allow multiple SQL commands in one statement。你应该尝试设置PDO选项PDO :: ATTR_EMULATE_PREPARES为真:对于如何做到这一点

$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, true). 

检查Zend的文档。 (例如,在Yii中,它通过对“db”组件的emulatePrepare选项完成)

相关问题