SPI_returntuple
SPI_returntuple — подготовить строку для возврата в виде Datum
Синтаксис
HeapTupleHeader SPI_returntuple(HeapTuplerow
, TupleDescrowdesc
)
Описание
SPI_returntuple
делает копию строки в верхнем контексте исполнителя и возвращает её в форме типа Datum
. Чтобы выдать результат, полученный указатель остаётся только преобразовать в Datum
функцией PointerGetDatum
.
Эту функцию можно использовать только когда установлено подключение к SPI. В противном случае она возвращает NULL и устанавливает в SPI_result
значение SPI_ERROR_UNCONNECTED
.
Заметьте, что эту операцию следует применять в функциях, объявленных как возвращающие составные типы. В триггерах она не применяется; чтобы вернуть изменённую строку из триггера, используйте SPI_copytuple
.
Аргументы
HeapTuple
row
строка, подлежащая копированию
TupleDesc
rowdesc
дескриптор строки (передавайте каждый раз один дескриптор для более эффективного кеширования)
Возвращаемое значение
HeapTupleHeader
, указывающий на скопированную строку, или NULL
в случае ошибки (SPI_result
содержит код ошибки)