# SPI_保存计划
SPI_saveplan — 保存准备好的语句
# 概要
SPIPlanPtr SPI_saveplan(SPIPlanPtr plan)
# 描述
SPI_saveplan
复制一份通过的声明(由SPI_prepare
) 到不会被释放的内存中SPI_完成
也不是由事务管理器,并返回一个指向复制语句的指针。这使您能够在当前会话中的 C 函数的后续调用中重用准备好的语句。
# 论据
SPIPlanPtr *
计划*
要保存的准备好的语句
# 返回值
指向复制语句的指针;要么空值
如果不成功。出错时,SPI_结果
是这样设置的:
SPI_ERROR_ARGUMENT
如果*计划
*是空值
或无效
SPI_ERROR_UNCONNECTED
如果从未连接的 C 函数调用
# 笔记
最初传入的语句没有被释放,所以你可能希望这样做SPI_freeplan
在它上面以避免泄漏内存,直到SPI_完成
.
在大多数情况下,SPI_keepplan
比这个函数更受欢迎,因为它在不需要物理复制准备好的语句的数据结构的情况下实现了大致相同的结果。