Oracle - 快速提取alter table脚本

时间:2016-05-13 15:42:49

标签: oracle oracle11g toad

在Toad for Oracle中,可以查看特定表的DDL脚本。我正试图找出一种方法来快速拉动ALTER TABLE ADD FOREIGN KEY CONSTRAINT ddl近50个表而不是去所有表并抓住它们。是否有针对此的目录表或仅提取该部分的方法?

2 个答案:

答案 0 :(得分:1)

是的,在Toad中肯定是可能的。 (N.B.我的架构浏览器设置为使用选项卡;如果您的选项卡没有标签,我不确定以下内容是否有效!)

以下是如何在Toad中获取它的:

  1. 单击“约束”选项卡
  2. 按照Img列
  3. 排序约束
  4. 向下滚动到外键约束(蓝色键,旁边有一个F)
  5. 按住Ctrl键并单击要为其生成脚本的外键
  6. 右键单击约束名称列表
  7. 选择"创建脚本"从弹出菜单
  8. 这会打开一个窗口,允许您选择选项以及如何显示结果。

答案 1 :(得分:1)

与工具无关的版本:

SELECT dbms_metadata.get_dependent_ddl('REF_CONSTRAINT', table_name)
  FROM user_tables t -- may want to change this to all_tables...
WHERE EXISTS (SELECT 1
                FROM user_constraints
              WHERE table_name = t.table_name
                AND constraint_type = 'R');

这将为所有外键约束(对于具有它们的表)生成ALTER TABLE语句。

http://przemyslawkruglej.com/archive/2014/09/how-to-get-referential-constraints-using-dbms_metadata/