PL / SQL过程级联删除子表

时间:2014-06-26 09:23:56

标签: sql oracle plsql

我有这种情况。

我必须编写一个PL / SQL过程来删除父表的所有子表,并修改子表中引用的列的长度。

我需要从用户那里获取这些参数的输入。 父表名 父列名称(其列大小将被更改) 新列大小

我是PL / SQL编程的新手。请帮助我。

提前致谢。

1 个答案:

答案 0 :(得分:1)

我不会在这里做你的工作,但这些提示可以帮助你:

  • all_cons_columns table_name='*name of the parent table*' and column_name='*name of the column you want to alter*'
  • 中查找父表的主键约束的名称
  • all_conststraints constraint_type='R' and r_constraint_name='*name of the primary key constraint found in step one*'
  • 中查找子表
  • 使用EXECUTE IMMEDIATE执行DML语句以删除子表并更改父表