更新集合列

您可使用 SET 子句来更新集合列中的值。要获取更多信息,请参阅 集合构造函数

集合变量可更新集合类型列。以集合变量,您可插入一个或多个集合的单独元素。要获取更多信息,请参阅 集合派生表

例如,假设您定义 tab1 表如下:
CREATE TABLE tab1 
        (
        int1 INTEGER, 
        list1 LIST(ROW(a INTEGER, b CHAR(5)) NOT NULL),
        dec1 DECIMAL(5,2)
        );
下列 UPDATE 语句更新 tab1 中的一行:
UPDATE tab1 
      SET list1 = LIST{ROW(2, 'zyxwv'),
      ROW(POW(2,6), '=64'), 
      ROW(ROUND(ROOT(146)), '=12')},
      WHERE int1 = 10;

在此示例中的集合列 list1 有三个元素。每一元素是带有 INTEGER 字段和 CHAR(5) 字段的未命名的 ROW 类型。第一个元素包括两个文字值:一个整数(2 )和一个引号括起的字符串('zyxwv')。

第二个和第三个元素还使用引号括起的字符串来表明第二个字段的值。然而,它们以表达式,而不是以文字值,来指定第一个字段的值。