SPI_freetuptable
释放一个由之前的 SPI 命令
执行函数(例如SPI_execute
)创建的行集合。因此,
调用这个函数时,常常使用SPI_tuptable作为
参数。
如果一个 SPI 过程需要执行多个命令并且不想保留早期命令的结果,这个
函数就有用了。注意,SPI_finish
会释放任何还未释放的
行集合。还有,如果在一个 SPI 过程的执行中开始了一个子事务并且后来
被中止,SPI 会自动释放该子事务运行期间创建的任何行集合。
从PostgreSQL 9.3 开始,
SPI_freetuptable
包含了保护逻辑以避免对于同
一行集的重复删除请求。在以前的发布中,重复的删除将会导致崩溃。