PLSQL中的从父表删除过程

PLSQL中的从父表删除过程,plsql,parent-child,procedure,Plsql,Parent Child,Procedure,我的任务是从父表中删除条目,这意味着我需要删除子表中的相应条目。我需要在过程中执行此操作,并且基于父表的主键。到目前为止,我只是对我需要的输入参数感到困惑。这就是我到目前为止所做的: procedure sps_delete_patientmedrecs_det ( p_parentPK_in in parent_table.parentPK%type, p_err_code_out out number, p_err_msg_out out varchar2) dele

我的任务是从
父表
中删除条目,这意味着我需要删除
子表
中的相应条目。我需要在
过程中执行此操作
,并且基于
父表的
主键
。到目前为止,我只是对我需要的
输入参数感到困惑。这就是我到目前为止所做的:

procedure sps_delete_patientmedrecs_det  (
  p_parentPK_in   in parent_table.parentPK%type,
  p_err_code_out  out number,
  p_err_msg_out   out varchar2)
delete from child_table
  where child_table.childFK = p_parentPK_in;

delete from parent_table
  where parent_table.parent.parentPK = p_parentPK_in;
end;
到目前为止,我认为这不会起作用,因为我认为
过程
不会知道
子外键是什么。我想做一个
select
语句,但是我对
input参数感到困惑,因为我只得到了p\u parentPK\u。感谢您的帮助,并提前向您表示感谢


同样作为一个脚注,
DELETE CASCADE
不在图片中。

无需担心,这是有效的。在第二次删除之前,我刚刚添加了另一个begin。

您如何处理err_代码参数?只需使用标准PL/SQL异常即可。:)在Java中是不会这样做的,那么为什么PL/SQL中会有任何不同呢?我工作的公司使用它的方式不同,我只是没有说明他们在这个过程中做了什么。我曾经工作过的公司也这样做。当与项目负责人交谈时,他只是没有意识到自定义异常。改变一切当然是另一回事,但我相信他的下一个项目他会做好的。