我正在开发的一些软件使用了 Oracle 中的触发器。我们有一整套目前在数据库中创建和禁用。当运行 CREATE 或 REPLACE 来修改已经存在的触发器时,该触发器会自动启用。我知道 CREATE 会自动启用某些功能,但为什么替换要这样做?
然而,奇怪的是,这只发生在我们的一个数据库上,其他数据库都很好。数据库中是否存在可能导致这种情况或正在启用预期的 REPLACE 行为的设置?
最佳答案
我想 OR REPLACE
子句被认为是 CREATE
命令的修饰符,而不是一个命令本身。和 CREATE TRIGGER命令旨在这样做:
Use the CREATE TRIGGER statement to create and enable a database trigger [...]
When you create a trigger, the database enables it automatically. You can subsequently disable and enable a trigger with the DISABLE and ENABLE clause of the ALTER TRIGGER or ALTER TABLE statement.
关于database - 替换 Oracle 11g 触发器自动启用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13972232/