如何在更新主表时更新子表

时间:2012-06-07 07:39:46

标签: oracle11g

我有一个父表EMPLOYEE,列(SYSID,SERVICENO,DEPENDENTS...)SYSID是主键)和子表EMPLOYEE_ADDRESS (EMPLOYEE_SYSID,CITY,STATE...)EMPLOYEE_SYSID是外键)。< / p>

这是我的问题:当我在master中更新SYSID时,如何更新子表中的EMPLOYEE_SYSID。还有一件事:我为EMPLOYEE表增加了10个子表,请帮助我。

1 个答案:

答案 0 :(得分:0)

这称为“更新级联”,最好通过选择其值不会随时间变化的主键来避免。

如果这是一次性修复,您可以暂时禁用外键约束(当没有用户在数据库中时),更新所有表,然后重新启用约束。

如果您需要持续的方法,Tom Kyte已发布更新级联解决方案on his blog