SQL言語で使用できるDELETEステートメントは、SPLプログラムでも使用できます。
SPL言語の式は、SQL DELETEステートメントで式が許可されている場合はどこでも使用できます。 したがって、SPL変数およびパラメータを使用して、値を削除操作に供給することができる。
CREATE OR REPLACE PROCEDURE emp_delete (
p_empno IN emp.empno % TYPE
)
IS
開始
DELETE FROM emp WHERE empno = p_empno;
IF SQL % が見つかった
DBMS_OUTPUT.PUT_LINE('Deleted Employee # : '| | p_empno);
ELSE
DBMS_OUTPUT.PUT_LINE('Employee # '| | p_empno | |' は見つかりません);
エンドIF;
エンド;
行が削除された場合、SQL % FOUND条件式はTRUEを返します。 それ以外の場合、式はFALSEを返します。
EXEC emp_delete(9503);
削除された従業員# : 9503
SELECT * FROM emp WHERE empno = 9503;
empno | ename | job | mgr | hiredate | sal | comm | deptno
------ ------- -----------------------------------------------
(0行)