Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 已准备好的语句已存在_Php_Postgresql_Prepared Statement - Fatal编程技术网

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连接的前一次执行创建的。我同意,如果不是我重新启动计算机,这可能是个问题,只是为了确保我已杀死所有卡住的进程,然后先执行该语句。它给出了同样的错误。