Oracleの例外処理の手順は何ですか?

Oracleの例外処理のステップは次のとおりです:1.例外の検出:プログラム中で実行されるステートメントは例外を引き起こす可能性があります。Oracleでは、例外は「例外条件」と呼ばれます。例外条件が発生すると、Oracleは自動的に対応する例外を発生させます。2. 例外の捕捉:例外を処理するために、プログラムはこれらの例外を捕捉する必要があります。PL/SQLでは、例外をキャッチするためにEXCEPTIONブロックを使用することができます。EXCEPTIONブロックは、例外が発生した際に対応するコードブロックを実行します。3. 例外の処理:例外を捕捉した後、例外を処理することができます。例外の処理方法には、例外情報の記録、トランザクションのロールバック、例外の再スローなどが含まれます。具体的な要件に応じて、適切な処理ロジックをEXCEPTIONブロックで実行できます。4. 例外処理の終了:例外処理が完了すると、プログラムは次のコードを続行します。PL/SQLでは、異なる種類の例外を処理するために複数のEXCEPTIONブロックを使用できます。各例外ブロックで異なる処理ロジックを指定できます。以下はOracleの例外処理のステップを示す簡単な例です:

DECLARE

— 声明自定义异常

emp_not_found EXCEPTION;

PRAGMA EXCEPTION_INIT(emp_not_found, -1403);

 

— 定义变量

emp_id NUMBER := 1000;

emp_name VARCHAR2(100);

BEGIN

— 查询员工姓名

SELECT last_name INTO emp_name

FROM employees

WHERE employee_id = emp_id;

 

— 打印员工姓名

DBMS_OUTPUT.PUT_LINE(‘Employee Name: ‘ || emp_name);

 

EXCEPTION

— 处理自定义异常

WHEN emp_not_found THEN

DBMS_OUTPUT.PUT_LINE(‘Employee Not Found: ‘ || emp_id);

 

— 处理其他异常

WHEN OTHERS THEN

DBMS_OUTPUT.PUT_LINE(‘Error: ‘ || SQLCODE || ‘ – ‘ || SQLERRM);

END;


上記の例では、プログラムは存在しない従業員の名前をクエリしようとします。従業員が見つからない場合、カスタム例外emp_not_foundがスローされます。EXCEPTIONブロックではその例外がキャッチされ、適切な処理が行われます。他の例外が発生した場合は、OTHERSブロックに入ります。

bannerAds