CREATE ROW TYPE address_t ( street CHAR(20), city CHAR(15), state CHAR(2), zipcode CHAR(9) ); CREATE TABLE employee ( name ROW ( fname CHAR(20), lname CHAR(20)), address address_t );
INSERT INTO employee VALUES ( ROW('John', 'Williams'), ROW('103 Baker St', 'Tracy','CA', 94060)::address_t );
INSERT 使用 ROW 构造函数来生成 name 列(未命名的 ROW 数据类型)和 address 列(命名的 ROW 数据类型)的值。当您为命名的 ROW 数据类型指定值时,必须使用 CAST AS 关键字或双冒号(:: )运算符,以 ROW 数据类型的名称来将该值强制转型为命名的 ROW 数据类型。
要了解 ROW 构造函数的语法,请参阅“表达式”部分中的 构造函数表达式。要了解关于命名的 ROW 和未命名的 ROW 数据类型的精确值的信息,请参阅 Literal Row。
当您在 VALUES 子句中使用 ROW 变量时,该 ROW 变量必须包含每一字段值的值。要获取更多信息,请参阅 插入到行变量(ESQL/C、SPL)内。