Php 已准备好的语句已存在
我显然错过了什么。我使用这个序列来准备一个语句并执行它Php 已准备好的语句已存在,php,postgresql,prepared-statement,Php,Postgresql,Prepared Statement,我显然错过了什么。我使用这个序列来准备一个语句并执行它 $result = pg_prepare($link,"getacctname",'SELECT accounts.acctname FROM accounts WHERE accounts.acctname = $1') or die(pg_last_error()); $result = pg_execute($link,"getacctname",array($this->valuetofind)) or die(pg_la
$result = pg_prepare($link,"getacctname",'SELECT accounts.acctname FROM accounts WHERE accounts.acctname = $1') or die(pg_last_error());
$result = pg_execute($link,"getacctname",array($this->valuetofind)) or die(pg_last_error());
我总是得到错误“准备好的语句已经存在”。我读过其他帖子,甚至尝试在准备和相同结果之前添加
pg_query($link, "DEALLOCATE getacctname");
我甚至尝试更改查询的名称并重新启动我的机器,以确保没有任何卡在我看不到的地方。相同的结果。使用pg_查询($link,“DEALLOCATE ALL”);在准备解决问题之前
然而,令人不安的问题是,唯一用于该名称的placeprepare语句查询名称就在该位置。在关闭我的机器并返回到puzzle之后,我尝试了运行代码的过程,它说语句已经存在,即使这是第一次运行代码 有关检查已存在的准备语句的链接可能会有所帮助:。当使用配置错误的连接池或永久连接(pg_pconnect?)时,可能会发生这种情况。已经存在的prepared语句是由使用相同db连接的前一次执行创建的。我同意,如果不是我重新启动计算机,这可能是个问题,只是为了确保我已杀死所有卡住的进程,然后先执行该语句。它给出了同样的错误。