<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://dbstudy.co.kr/w/index.php?action=history&amp;feed=atom&amp;title=%EC%98%88%EC%99%B8%EC%B2%98%EB%A6%AC_%EA%B3%A0%EA%B8%89_%EC%98%88%EC%8B%9C</id>
	<title>예외처리 고급 예시 - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="https://dbstudy.co.kr/w/index.php?action=history&amp;feed=atom&amp;title=%EC%98%88%EC%99%B8%EC%B2%98%EB%A6%AC_%EA%B3%A0%EA%B8%89_%EC%98%88%EC%8B%9C"/>
	<link rel="alternate" type="text/html" href="https://dbstudy.co.kr/w/index.php?title=%EC%98%88%EC%99%B8%EC%B2%98%EB%A6%AC_%EA%B3%A0%EA%B8%89_%EC%98%88%EC%8B%9C&amp;action=history"/>
	<updated>2026-05-08T15:40:59Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.39.10</generator>
	<entry>
		<id>https://dbstudy.co.kr/w/index.php?title=%EC%98%88%EC%99%B8%EC%B2%98%EB%A6%AC_%EA%B3%A0%EA%B8%89_%EC%98%88%EC%8B%9C&amp;diff=317&amp;oldid=prev</id>
		<title>Oracle: 새 문서: 예외처리 고급 예시  3-1. 사용자 정의 예외 처리  DECLARE   e_too_young EXCEPTION;   v_age NUMBER := 15; BEGIN   IF v_age &lt; 18 THEN     RAISE e_too_young;   END IF; EXCEPTION   WHEN e_too_young THEN     DBMS_OUTPUT.PUT_LINE(&#039;나이가 너무 어립니다!&#039;); END;    ⸻  3-2. OTHERS 예외 로그 저장  DECLARE   v_emp_id NUMBER := 99999;   v_name   VARCHAR2(50); BEGIN   SELECT first_name INTO v_name   FROM employees   WHERE employee_id = v_emp_id; EXCEPTION   WH...</title>
		<link rel="alternate" type="text/html" href="https://dbstudy.co.kr/w/index.php?title=%EC%98%88%EC%99%B8%EC%B2%98%EB%A6%AC_%EA%B3%A0%EA%B8%89_%EC%98%88%EC%8B%9C&amp;diff=317&amp;oldid=prev"/>
		<updated>2025-05-13T10:20:22Z</updated>

		<summary type="html">&lt;p&gt;새 문서: 예외처리 고급 예시  3-1. 사용자 정의 예외 처리  DECLARE   e_too_young EXCEPTION;   v_age NUMBER := 15; BEGIN   IF v_age &amp;lt; 18 THEN     RAISE e_too_young;   END IF; EXCEPTION   WHEN e_too_young THEN     DBMS_OUTPUT.PUT_LINE(&amp;#039;나이가 너무 어립니다!&amp;#039;); END;    ⸻  3-2. OTHERS 예외 로그 저장  DECLARE   v_emp_id NUMBER := 99999;   v_name   VARCHAR2(50); BEGIN   SELECT first_name INTO v_name   FROM employees   WHERE employee_id = v_emp_id; EXCEPTION   WH...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;예외처리 고급 예시&lt;br /&gt;
&lt;br /&gt;
3-1. 사용자 정의 예외 처리&lt;br /&gt;
&lt;br /&gt;
DECLARE&lt;br /&gt;
  e_too_young EXCEPTION;&lt;br /&gt;
  v_age NUMBER := 15;&lt;br /&gt;
BEGIN&lt;br /&gt;
  IF v_age &amp;lt; 18 THEN&lt;br /&gt;
    RAISE e_too_young;&lt;br /&gt;
  END IF;&lt;br /&gt;
EXCEPTION&lt;br /&gt;
  WHEN e_too_young THEN&lt;br /&gt;
    DBMS_OUTPUT.PUT_LINE(&amp;#039;나이가 너무 어립니다!&amp;#039;);&lt;br /&gt;
END;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
⸻&lt;br /&gt;
&lt;br /&gt;
3-2. OTHERS 예외 로그 저장&lt;br /&gt;
&lt;br /&gt;
DECLARE&lt;br /&gt;
  v_emp_id NUMBER := 99999;&lt;br /&gt;
  v_name   VARCHAR2(50);&lt;br /&gt;
BEGIN&lt;br /&gt;
  SELECT first_name INTO v_name&lt;br /&gt;
  FROM employees&lt;br /&gt;
  WHERE employee_id = v_emp_id;&lt;br /&gt;
EXCEPTION&lt;br /&gt;
  WHEN OTHERS THEN&lt;br /&gt;
    INSERT INTO error_log(log_time, message)&lt;br /&gt;
    VALUES (SYSDATE, SQLERRM);&lt;br /&gt;
    DBMS_OUTPUT.PUT_LINE(&amp;#039;오류 발생: &amp;#039; || SQLERRM);&lt;br /&gt;
END;&lt;br /&gt;
&lt;br /&gt;
SQLERRM = 최근 발생한 에러 메시지&lt;br /&gt;
SQLCODE = 최근 에러 코드&lt;br /&gt;
&lt;br /&gt;
⸻&lt;br /&gt;
&lt;br /&gt;
요약&lt;br /&gt;
&lt;br /&gt;
항목	요점&lt;br /&gt;
프로시저	동작 실행 (값 반환 X)&lt;br /&gt;
함수	값을 반환 (RETURN 사용)&lt;br /&gt;
커서	여러 행 반복 처리 시 사용&lt;br /&gt;
예외처리	EXCEPTION 블록 + 사용자 정의 또는 OTHERS 처리 가능&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
⸻&lt;/div&gt;</summary>
		<author><name>Oracle</name></author>
	</entry>
</feed>