본문 바로가기

SQL/DB2

DB2 VALUES INTO 문

1. VALUES INTO 문

 

VALUES 문의 실행 결과로 반환된 결과를 scalar  변수 또는 row 변수에 할당하게 된다.

이 때 반환되는 결과는 최대 한 건으로, SELECT INTO 문과는 결과 레코드를 직접 지정한다는 점에서 차이를 드러낸다.

결과가 2건 이상이 되면, 오류가 발생하고, INTO 절에 지정한 변수의 값은 변경되지 않는다.

 VALUES ...INTO scalar변수1 [, scalar변수2,...]
VALEUS ...INTO row변수

 

먼저 결과 레코드의 컬럼별로 scalar 변수에 할당하는 방법을 살펴보자.

DECALRE V_NO INT;
DECALRE V_NAME VARCHAR(10);

VALUES(10, 'ABC')
INTO V_NO, V_NAME;

예문에서 VALUES 문에 작성한 내용을 통해 INTO 문에 지정한 scalar 변수에 각 데이터를 할당하게 된다.

 

다음은 row 변수에 할당하는 방법을 살펴보자.

DECLARE V_ROW ANCHOR ROW TABLE_X;

VALUES(10, 'ABC')
INTO V_ROW;

INTO 절에 대응하는 row 변수 또는 row 유형의 array 변수 원소를 지정할 수 있는데, 예문에서는 row 변수인 V_ROW 에 할당하도록 하였다.