반응형
"ORA-01403: no data found" 에러 해결 방법
ORA-01403 Cause:
- No data was found from the objects.
ORA-01403 원인:
- 개체에서 데이터를 찾을 수 없습니다.
ORA-01403 Action:
- There was no data from the objects which may be due to end of fetch.
ORA-01403 조치:
- 가져오기 종료로 인해 개체에 데이터가 없습니다.
ORA-01403 해결:
보통 DB에서 설정 값 혹은 공통코드값을 가지올때 많이 발행 합니다.
DECLARE
V_SORT NVARCHAR2(100);
begin
SELECT 1 INTO V_SORT FROM
(
SELECT 1 SORT FROM DUAL UNION ALL
SELECT 1 SORT FROM DUAL UNION ALL
SELECT 2 SORT FROM DUAL
)X
WHERE X.SORT =3
;
dbms_output.put_line('V_SORT : ' || TO_CHAR( V_SORT));
EXCEPTION WHEN OTHERS THEN
dbms_output.put_line( 'SQLERRM :' || SQLERRM ||CHR(13) || DBMS_UTILITY.FORMAT_ERROR_BACKTRACE);
end;
수정후
DECLARE
V_SORT NVARCHAR2(100);
begin
BEGIN
SELECT 1 INTO V_SORT FROM
(
SELECT 1 SORT FROM DUAL UNION ALL
SELECT 1 SORT FROM DUAL UNION ALL
SELECT 2 SORT FROM DUAL
)X
WHERE X.SORT =3
;
EXCEPTION
WHEN NO_DATA_FOUND THEN
--데이터를 찾을 수 없습니다
V_SORT :='0';
WHEN OTHERS THEN
-- NULL 값으로 설정
V_SORT :=NULL;
END;
dbms_output.put_line('V_SORT : ' || TO_CHAR( V_SORT));
EXCEPTION WHEN OTHERS THEN
dbms_output.put_line( 'SQLERRM :' || SQLERRM ||CHR(13) || DBMS_UTILITY.FORMAT_ERROR_BACKTRACE);
end;
반응형
'Oracle > ORA-' 카테고리의 다른 글
ORA-06550: 호출 시 인수의 갯수나 유형이 잘못되었습니다 (1) | 2023.05.13 |
---|---|
ORA-38824: CREATE OR REPLACE 명령이 기존 객체의 EDITIONABLE 속성을 변경할 수 없습니다. (0) | 2023.05.13 |
ORA-12899: 열 문자열 에 비해 값이 너무 큽니다 (실제: 36, 최대값: 30) . (0) | 2023.01.14 |
ORA-30926: 원본 테이블의 고정 행 집합을 가져올 수 없습니다 (0) | 2023.01.14 |
ORA-06504: PL/SQL: Result Set 변수 또는 질의의 리턴 유형이 일치하지 않습니다 (0) | 2023.01.14 |