支援的版本: 目前 (17) / 16 / 15 / 14 / 13
開發版本: devel
不支援的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4

SPI_saveplan

SPI_saveplan — 儲存預備語句

概要

SPIPlanPtr SPI_saveplan(SPIPlanPtr plan)

描述

SPI_saveplan 複製一個傳入的語句(由 SPI_prepare 預備),到不會被 SPI_finish 或事務管理器釋放的記憶體中,並返回一個指向複製語句的指標。這使您能夠在目前會話中,在後續呼叫您的 C 函數時重複使用預備語句。

引數

SPIPlanPtr plan

要儲存的預備語句

傳回值

指向複製語句的指標;或 NULL 如果不成功。發生錯誤時,SPI_result 會設定為

SPI_ERROR_ARGUMENT

如果 planNULL 或無效

SPI_ERROR_UNCONNECTED

如果從未連線的 C 函數呼叫

注意事項

最初傳入的語句不會被釋放,因此您可能希望對其執行 SPI_freeplan,以避免在 SPI_finish 之前洩漏記憶體。

在大多數情況下,SPI_keepplan 比此函數更受歡迎,因為它在很大程度上實現了相同的結果,而無需物理複製預備語句的資料結構。

提交更正

如果您在文件中發現任何不正確、與您使用特定功能的經驗不符或需要進一步說明的內容,請使用此表單報告文件問題。