Name
SPI_modifytuple -- 透過替換一個給出行的選定的字串建立一行
Synopsis
HeapTuple SPI_modifytuple(Relation rel, HeapTuple row, ncols, colnum, Datum * values, const char * nulls)
描述
SPI_modifytuple 透過給選定的字串替換新值,拷貝其它字串的原值的方法建立一個新行。
不修改輸入的行。
參數
- Relation rel
只用於該行的行描述符的源。(傳遞一個關係而不是一個行描述符是一個誤特性。)
- HeapTuple row
要修改的行
- int ncols
在數組 colnum 裡字串編號的個數
- int * colnum
要修改的字串的編號的數組(編號從 1 開始記)
- Datum * values
聲明字串的新值
- const char * Nulls
如果有的話,哪個新值是空(參閱 SPI_execute_plan 獲取其格式)
返回值
修改後的新行,在上層執行者環境裡分配;只有在 row 是 NULL 的時候為 NULL
出錯時,SPI_result 設置為下列數值:
- SPI_ERROR_ARGUMENT
如果 rel 是 NULL,或者如果 row 是 NULL,
或者如果 ncols 小於或者等於 0,或者 colnum 是 NULL,
或者如果 values 是 NULL。
- SPI_ERROR_NOATTRIBUTE
如果 colnum 包含一個無效的字串編號(小於或者等於 0 或者大於 row 裡的字串數)