我想了解触发器中更新前的含义。
我有一个名为DEPT_MST
where DEPT_ID
is the primary key 的表。它有 2 行,DEPT_ID
1 和 2。
另一个表EMP
有列EMP_ID
作为主键,它是表EMP_DEPT_ID
的外键引用。DEPT_ID
DEPT
EMP
现在,如果我在表列上添加更新前触发器EMP_DEPT_ID
,它将检查EMP_DEPT_ID
主表中是否存在新值,DEPT
如果现在将插入新行和DEPT_ID
表中的新行DEPT
。
现在,如果我更新EMP_DEPT_ID
到 3 其中表中EMP_DEPT_ID
的 2EMP
给出完整性约束违规错误父未找到。
所以,
- 这是否意味着Oracle首先检查完整性约束,然后调用“更新前”触发器?
- 那么我们如何绕过这个检查并在更新触发器之前调用呢?
- 这里的“更新前”到底是什么意思?
- 如何通过使用触发器而不是使用显式 PL SQL 块来实现上述结果?
谢谢