概要
SELECT INTOを使用して、取得した件数が0件で何も代入できなかった場合に発生するエラーに対して、例外処理を行います。
実践
ソースコード
DECLARE
emp_name VARCHAR2(20);
BEGIN
BEGIN
SELECT name INTO emp_name FROM emp WHERE empid = '10';
EXCEPTION
WHEN no_data_found THEN
DBMS_OUTPUT.PUT_LINE('データを取得できませんでした。');
END;
END;
実行結果
「データを取得できませんでした。」のメッセージが表示されます。
解説
SELECT INTOで0件取得の場合、no_data_found例外が発生するので、その例外名で例外処理を行います。
例外発生時は、メッセージを表示したり、ロールバックしたり、デフォルト値を設定するなどの処理を行う必要があります。