Used only as source of tuple descriptor for tuple. (Passing a relation
rather than a tuple descriptor is a misfeature.)
HeapTuple tuple
Input tuple to be modified
int nattrs
Number of attribute numbers in attnum array
int * attnum
Array of numbers of the attributes that are to be changed
Datum * Values
New values for the attributes specified
char * Nulls
Which new values are NULL, if any
Outputs
HeapTuple
New tuple with modifications
non-NULL
if tuple
is not NULL and the modify was successful
NULL
only if tuple
is NULL
SPI_result
SPI_ERROR_ARGUMENT if rel is NULL or tuple is NULL or natts <= 0 or
attnum is NULL or Values is NULL.
SPI_ERROR_NOATTRIBUTE if there is an invalid
attribute number in attnum (attnum <= 0 or > number of
attributes in tuple)
Description
SPI_modifytuple
creates a new tuple by substituting new values for selected attributes,
copying the original tuple's attributes at other positions. The input
tuple is not modified.
Usage
If successful, a pointer to the new tuple is returned. The new tuple is
allocated in upper Executor context.