無法透過 SPI 函數(例如 SPI_execute
)來執行交易控制命令(例如 COMMIT
和 ROLLBACK
)。但是,存在獨立的介面函數,允許透過 SPI 進行交易控制。
通常,在任意使用者定義的 SQL 可呼叫函數中啟動和結束交易是不安全且不明智的,而未考量呼叫它們的內容。例如,位於函數中間的交易邊界,而該函數是複雜 SQL 表達式的一部分,而該表達式又是某些 SQL 命令的一部分,則可能會導致不明顯的內部錯誤或崩潰。此處介紹的介面函數主要旨在由程序語言實作使用,以支援 SQL 層級程序中的交易管理,這些程序由 CALL
命令調用,並考量 CALL
呼叫的內容。以 C 實作的使用 SPI 程序可以實作相同的邏輯,但其細節超出了本文件的範圍。
如果您在文件中發現任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用此表單報告文件問題。