現在、PL/SQLを学習しており、現在はoracle HRスキーマを使用してプロシージャと例外を処理しています。存在しない行の更新/削除時のPL/SQL例外
ここに私の簡単な手順があります。
create or replace
PROCEDURE DEL_JOB
(p_jobid jobs.job_id%TYPE)
AS
sqle NUMBER;
sqlm VARCHAR2(300);
BEGIN
DELETE FROM JOBS
WHERE JOB_ID = UPPER(p_jobid);
IF SQL%NOTFOUND THEN
DBMS_OUTPUT.PUT_LINE('No such record');
END IF;
EXCEPTION
WHEN OTHERS THEN
sqle := SQLCODE;
sqlm := SQLERRM;
DBMS_OUTPUT.PUT_LINE('There is no job with this id that could be deleted');
DBMS_OUTPUT.PUT_LINE('Error Code ='||sqle||' Error message =' ||sqlm);
END;
私は、この手順を実行すると、出力はただし、Oracle PDFに応じて、それが例外をスローする必要がありますし、私は本当に私は例外で入力したメッセージを取得する必要があります
No such record
PL/SQL procedure successfully complete.
です。
既存のレコードの更新でも同じことが起こりました。 お知らせください。ありがとう
ありがとうございます。私はただ何も欠けていないことを確認したかっただけです。 – MStp