↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

已结束支持的版本: 7.3 / 7.2 / 7.1 / 7.0 / 6.5 / 6.4
历史版本。 PostgreSQL 7.3 已结束支持。 请参阅 当前版本手册.

SPI_modifytuple

SPI_modifytuple — 通过替换给定元组中的选定字段来创建一个元组

大纲

SPI_modifytuple(rel, tuple, nattrs, attnum, Values, Nulls)

输入

Relation rel

仅用作元组的元组描述符来源。(传关系而不是元组描述符是一种缺陷设计。)

HeapTuple tuple

要修改的输入元组

int nattrs

attnum 数组中属性编号的数量

int * attnum

要被修改的属性的编号组成的数组

Datum * Values

指定属性的新值

char * Nulls

哪些新值为 NULL(如果有的话)

输出

HeapTuple

带修改内容的新元组

→ 非 NULL tuple 不为 NULL 且修改成功时
→ NULL 仅当 tuple 为 NULL 时
SPI_result
→ SPI_ERROR_ARGUMENT rel 为 NULL,或 tuple 为 NULL,或 natts <= 0,或 attnum 为 NULL,或 Values 为 NULL 时。
→ SPI_ERROR_NOATTRIBUTE attnum 中存在无效的属性编号时(attnum <= 0,或大于元组中的属性数量)

描述

SPI_modifytuple 为选定的属性替换新值,并在其他位置复制原元组的属性,从而创建一个新元组。输入元组不会被修改。

用法

成功时,返回指向新元组的指针。新元组在上层执行器上下文中分配。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.