如何更新一个模式中的表以匹配第二个模式中的表

时间:2016-08-05 21:02:54

标签: sql oracle schema

如何更新一个模式中的表以匹配第二个模式中的表,假设唯一的区别是第二个模式中的其他字段和索引。我不想更改表中的任何数据。希望这样做而不费力地识别缺失的领域。

2 个答案:

答案 0 :(得分:1)

对此的优雅解决方案可以是在ALTER上触发的DDL触发器,CREATE ddl_event将相同的更改应用于第一个表(在一个模式中),与第二个表(即另一个模式)相同事务。

链接 - > https://docs.oracle.com/cd/E11882_01/appdev.112/e25519/triggers.htm#LNPLS2008

答案 1 :(得分:1)

Oracle DBMS炮兵的一个鲜为人知但有趣的最新成员是DBMS_COMPARISON。

https://docs.oracle.com/cd/B28359_01/appdev.111/b28419/d_comparison.htm

我自己没有尝试过,但根据文档应该能够至少为您提供信息,而无需进行任何繁重的脚本编写。

自Oracle7以来,我一直在做这类事情,并且总是不得不诉诸复杂的脚本。