是否有使用PHP的pg_prepare()函数可以准备的准备语句的数量限制?
没有PREPARE
- ed语句的最大数量,但是后端可以分配的RAM数量有逻辑限制。只要PREPARE
成功,PostgreSQL后端将保存准备好的语句,直到连接断开,此时它将清理PREPARE
ed语句(或者当您想要释放内存时,您可以DEALLOCATE
PREPARE
ed语句)。
所有PREPARED
语句都存储在每个后端哈希表中。 PREPARE
ed语句的内存分配由语句本身处理,并被重新分配到准备好的语句缓存中。如果您对细节感兴趣,请参阅src/backend/commands/prepare.c
和src/backend/utils/cache/plancache.c
:SaveCachedPlan()
这些信息是截止到2012-01-03的PostgreSQL 9.1+的最新信息,将来当PostgreSQL支持PREPARE
ed语句的持久缓存时可能会有所不同。