database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 40325 게시물 읽기
No. 40325
프로시저에서 결과값이 없을 경우에도 if 절을 타게 할 수 있을까요
작성자
김홍찬
작성일
2013-12-03 17:33
조회수
8,616

 

안녕하세요...

select colA
into v_colA
from tabA;

if (v_colA = null)
then

위의 select 절에 값이 아예 없을 경우 여기를 타게 하고 싶은데요..... 위에 if 문을 어떻게 바꿔야할까요?

else

end if;

 

 

 

이 글에 대한 댓글이 총 4건 있습니다.

 SELECT MAX ( colA )

     INTO v_colA

     FROM tabA ;

 

IF  v_colA IS NULL THEN

....

END IF

채용근(taiji97)님이 2013-12-03 18:51에 작성한 댓글입니다.

 

그렇게 해도 마찬가지로 아래와 같이 에러가 뜨네요...

ORA-01403: 데이터를 찾을 수 없습니다.에러 발생

김홍찬(chani282)님이 2013-12-03 23:19에 작성한 댓글입니다.

select max ( colA )

  into v_colA

from tabA;

 

이부분에서 나는 에러는 아닌거 같습니다. 다른데서 확인해보세요

채용근(taiji97)님이 2013-12-04 10:31에 작성한 댓글입니다.

ORA-01403을 해결하려면 다음과 같이 EXCEPTION 블록으로 처리해야 합니다.

BEGIN
  SELECT colA
  INTO v_colA
  FROM tabA;
EXCEPTION
  WHEN NO_DATA_FOUND THEN
    -- 여기에 원하는 것을 쓰세요.  아무것도 하지 않으려면 NULL; 로 처리
    NULL;
  WHEN TOO_MANY_ROWS THEN
    -- 혹은 여기   
    NULL; -- or do something here
  WHEN OTHERS THEN
    -- 다른 에러가 날 경우
    NULL; -- or do something here
END;

 

hopper(bunny)님이 2013-12-05 14:28에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40328서로 다른 seq를 가진 데이터를 조회하려고 합니다. [5]
초봉이
2013-12-05
6094
40327delete 시 ORA-30036 에러문제 [1]
정재영
2013-12-04
6726
40326KSC5601 에서 한글 문제로 문자셑을 바꾸려고 하는데 추천 부탁드립니다. [2]
박재덕
2013-12-03
6393
40325프로시저에서 결과값이 없을 경우에도 if 절을 타게 할 수 있을까요 [4]
김홍찬
2013-12-03
8616
40323oracle 에서... A컬럼 값과 B컬럼 값을 교환 하고 싶습니다... [2]
진네만
2013-11-29
6884
40322서로다른 계정의 테이블을 뷰로 만들때 다른계정에서 그뷰 사용... [1]
김현수
2013-11-29
6138
40321계단식으로 나오는 쿼리 하나의 레코드로 만드는 방법...
욱이
2013-11-28
6406
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.040초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다