SPI_saveplan — 保存预处理语句
SPIPlanPtr SPI_saveplan(SPIPlanPtr plan
)
SPI_saveplan
将传递的语句(由 SPI_prepare
预处理)复制到不会被 SPI_finish
或事务管理器释放的内存中,并返回指向复制语句的指针。 这使您能够在当前会话中随后调用 C 函数时重用预处理语句。
SPIPlanPtr plan
要保存的预处理语句
指向复制语句的指针;如果失败,则为 NULL
。 如果发生错误,则会设置 SPI_result
,如下所示
SPI_ERROR_ARGUMENT
如果 plan
为 NULL
或无效
SPI_ERROR_UNCONNECTED
如果从断开连接的 C 函数调用
最初传入的语句不会被释放,因此您可能希望对其执行 SPI_freeplan
,以避免在 SPI_finish
之前发生内存泄漏。
在大多数情况下,SPI_keepplan
比此函数更可取,因为它在很大程度上实现了相同的结果,而无需实际复制预处理语句的数据结构。
如果您发现文档中有任何不正确、与您使用特定功能的经验不符或需要进一步澄清的地方,请使用此表单报告文档问题。