Oracle数据库中触发器的修改

时间:2014-10-28 02:17:17

标签: oracle triggers

如果一个触发器已经在函数中,如果我将替换它的一小部分会产生什么影响,那么很多记录将被连续插入到表A中,其中应用了触发器。

触发器X在表A中运行, 每分钟得到的总记录是1000 如果我已经更换了触发器,那么它将对那些正在访问该表的服务产生影响。

提前致谢

1 个答案:

答案 0 :(得分:1)

CREATE TRIGGER DDL应该对正在运行的DML事务没有影响。表中不需要独占锁定以添加触发器。

创建或替换DDL略有不同。它必须改变现有的对象。如果触发器正在激活,则新触发器将尝试在更改触发器对象之前将其锁定在库高速缓存中。对桌子没有影响。

我通常会观察到触发器会立即执行。

如果您已经测试了触发器,则应该没有问题。如果触发器正确,它将生效,影响应根据您在触发器中写入的逻辑。创建触发器的行为并不重要,但触发器代码的正确性是。所以测试一下。

创建触发器时正在进行的任何事务都将在不触发触发器的情况下完成。

任何未来的交易都会触发触发器。