テーブルにデータを挿入するパッケージに次のコードがあります。
親キーが見つからない例外を取得できます。各列の制約違反メッセージを具体的に取得するにはどうすればよいですか? たとえば、proj_id
違反している場合は例外を発生させ、proj_code
違反している場合は別の例外を発生させます。
PROCEDURE add_project(
p_proj_id project.proj_id%TYPE,
p_proj_desc project.proj_desc%TYPE,
p_proj_code project.proj_code%TYPE,
p_proj_date project.proj_date%TYPE
)
IS
parent_not_found exception;
pragma exception_init(parent_not_found, -2291);
BEGIN
INSERT
INTO projects (proj_id,proj_desc,proj_code,proj_date) values
(p_proj_id,p_proj_desc,p_proj_code,p_proj_date);
exception
when parent_not_found then
raise_application_error(-20001,'Invalid');
END;