三流備忘録OracleのSQL PL/SQL 関数 ついての備忘録
ホーム >> PL/SQL備忘録 >> エラー処理

エラー処理

構文

WHEN 例外名 THEN
	例外時の処理;

例1


DECLARE
	w_num1 NUMBER := 10;
	w_num2 NUMBER := 0;
	w_r NUMBER;
BEGIN

	w_r := w_num1 / w_num2;

EXCEPTION
	/*******************************************
		0除算の場合ERROR処理 
	********************************************/
	WHEN ZERO_DIVIDE THEN
		w_r := NULL;
END;

例2


DECLARE

BEGIN

	エラーになる処理;

EXCEPTION
	/*******************************************
	 何が起こるかわからない場合はOTHERSで
	********************************************/
	WHEN OTHERS THEN
		
		/*******************************************
			SQLERRM, SQLCODEの使用
		********************************************/
		DBMS_OUTPUT.PUT_LINE('Error!! ' || SQLERRM(SQLCODE));
	   	RETURN;

END;