오라클 프로시져 작성 중에 변수에 데이터를 담아 처리중에 발생한 오류였다.
값이 없을수도 있는 경우를 대비해 예외 처리를 하고 아래 로직이 실행되어야 해서 고민하다 알게 된 방법.
물론 구글느님께서 검색해 주셨다.
SELECT .. INTO 시 NO DATA FOUND 예외인 경우 아래와 같이 처리한다.
CREATE OR REPLACE PROCEDURE PROC_TEST
IS
BEGIN
{ 다른 처리 내용....}
BEGIN
SELECT COL1 INTO V_COL1 FROM TB_TMP WHERE COND1 = ''
EXCEPTION
WHEN NO_DATA_FOUND THEN
V_COL1 := NULL;
IF V_COL1 IS NOT NULL THEN
..프로세스 처리
END IF;
END;
아래 다른 로직 처리....
END;
/
위와 같이 BEGIN.. END 블럭으로 감싼 후 처리하면 된다.
'프로그래밍 > DBMS' 카테고리의 다른 글
[MSSQL] 컬럼 추가 템플릿, Add Column (0) | 2017.10.19 |
---|---|
MSSQL 테이블 사용하는 프로시저 찾기 (0) | 2017.09.21 |
Oracle 연결시에 BadImageFormatException 32비트 문제 발생 시 (2) | 2016.11.22 |
오라클 IF.. ELSEIF 문 쓰다가 맨붕옴 ㅠㅠ (2) | 2016.01.28 |
MSSQL TRY CATCH 와 커서 (ERROR 16915) (3) | 2014.12.09 |
ROLLUP 총계만 필요할 때 (0) | 2014.12.03 |
MSSQL 테이블 목록 조회 (0) | 2014.12.03 |
오라클 WITH문과 CREATE TABLE 쓰기 (0) | 2014.11.24 |