ORA-04092 错误表示“cannot COMMIT in a trigger”,即在触发器中不能使用 COMMIT 语句。这是 Oracle 数据库的一个限制,旨在维护数据的一致性和事务的完整性。 为什么不能在触发器中执行 COMMIT 事务完整性:触发器通常与特定的 DML(Data Manipulation Language,数据操纵语言)操作相关联,如
它是一种自治事务at的标识at是由主事务mt调用但是独立于mt的事务在at被调用执行时mt被挂起在at内部一系列的dml可以被执行并且commit或rollback注意由于at的独立性它的commit和rollback并不影响mt的执行效果 ORA-04092:cannotCOMMITinatrigger ORA-04092: cannot COMMIT in a trigger...
其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句有create、alter、drop语句。
You tried to perform a COMMIT or ROLLBACK in a trigger. This is not allowed. Action: The options to resolve this Oracle error are: Re-write your trigger so that COMMITs and ROLLBACKs are not issued. --- 当在触发器里加入事务性操作时,会有如下错误:ORA-04092 cannot string in a trigger ...
> I have got an error : Ora 04092 Cannot commit in a trigger..., in my database.., > Does any body know what caused the problem...? > > I have already checked my trigger..and rewrite its, but i dont find a "commit " syntax in my PL/SQL blocks(trigger scripts). >...