SET ステートメントによる行変数に対する値の割り当て

行変数に対して値を割り当てるには、SET ステートメントを使用できます。 行変数には行の値を割り当てることができます。 行フィールド値または式を行フィールドに割り当てることができます。

行の値と行変数がともに同じユーザー定義の行データ・タイプである場合には、SET ステートメントを使用して行の値を行変数に割り当てることができます。

以下の例は、行の値を、同じフォーマットの行変数に割り当てる方法について示しています。
   SET empRow = newHire; 
行の値 newHireempRow 変数と同じフォーマットです。以下に示すように行フィールドの数とタイプが同じです。
   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

行の値を初期化するには、任意のサポート対象のフィールド割り当てを使用できます。