使用 SET 语句将值指定给行变量

可使用 SET 语句将值指定给行变量。可将行值指定给行变量。可将行字段值或表达式指定给行字段。

如果行值和行变量属于同一用户定义数据类型,那么可使用 SET 语句将行值指定给行变量。

以下是有关如何将行值指定给同一格式的行变量的示例:
   SET empRow = newHire; 
行值 newHire 的格式与 empRow 变量相同,即,行字段的数目和类型完全相同:
   empRow.lastName      /* VARCHAR(128) */
   empRow.firstName     /* VARCHAR(128) */
   empRow.id            /* VARCHAR(10)  */
   empRow.hireDate      /* TIMESTAMP    */
   empRow.dept          /* VARCHAR(3)   */

   newHire.lastName     /* VARCHAR(128) */
   newHire.firstName    /* VARCHAR(128) */
   newHire.id           /* VARCHAR(10)  */
   newHire.hireDate     /* TIMESTAMP    */
   newHire.dept         /* VARCHAR(3)   */
如果尝试将行值指定给没有相同格式的变量,那么会发生错误。
可通过将值指定给行中的个别字段来指定行值。以下是有关如何使用 SET 语句将值指定给行 empRow 中的字段的示例:

SET empRow.lastName = 'Brown';           // Literal value assignment

SET empRow.firstName = parmFirstName;    // Parameter value of same type assignment

SET empRow.id = var1;                    // Local variable of same type assignment

SET empRow.hiredate = CURRENT_TIMESTAMP; // Special register expression assignment

SET empRow.dept = NULL;                  // NULL value assignment

可使用任何受支持的字段来初始化行值。