SPI_returntuple — 准备以形式为 Datum 返回一个元组
HeapTupleHeader SPI_returntuple(HeapTuplerow
, TupleDescrowdesc
)
SPI_returntuple
复制上层执行器上下文中的行,以行类型 Datum
的形式返回该行。通过 PointerGetDatum
,返回的指针只需转换为 Datum
,然后才能返回即可。
此函数只能在连接到 SPI 时使用。否则,它会返回 NULL,并将 SPI_result
设置为 SPI_ERROR_UNCONNECTED
。
注意,这应用于声明为返回复合类型的函数。对于触发器并不使用它;使用 SPI_copytuple
以在触发器中返回修改后的行。
HeapTuple row
要复制的行
TupleDesc rowdesc
行描述符(每次传入相同的描述符可实现最有效的缓存)
HeapTupleHeader
指向已复制的行,或者 NULL
表示错误(请参阅 SPI_result
以了解错误指示信息)