我在下面的代码中遇到了问题,它是OracleSQL中使用的触发器:BEFORE INSERT OR UPDATERAISE_APPLICATION_ERROR(-20101, 'A tutor with the same name currently exists.');END IF;/
此触发器用于防止
我们知道(或者至少是)不能在触发器内的变异表上使用DML语句。摘录自甲骨文文档:
变异表是由UPDATE、DELETE或INSERT语句修改的表,或者是可能通过DELETE级联约束的效果更新的表。发出触发语句的会话不能查询或修改变异表。此限制防止触发器看到不一致的数据集。但是,当我使用SQL或SQL*Plus执行insert into emp时,我不明白为什么这个演示触发器