在整个事务完成的时候COMMIT或者ROLLBACK

解决方案 »

  1.   

    肯定是不能commit的.
    如果你commit了,之后触发器又出错了怎么办?
    所以只可以在触发器的最后提交.
      

  2.   

    “在整个事务完成的时候COMMIT或者ROLLBACK”?能说详细点吗,是在数据库中提交呢还是在程序中提交呢?“所以只可以在触发器的最后提交”?报这样的错误:ORA-04092: cannot COMMIT in a trigger
      

  3.   

    流程就是:
    1.启动事务
    2.进行一些数据收集
    3.更新或者插入或者删除记录,这些DML操作调用触发器.
    4.检查上面的DML操作是否正常
    5.正常->commit,异常->rollback
      

  4.   

    触发器所做的工作也是事务的一部分,不会自己提交,当然是由你在程序中控制commit或者rollback.
    你在程序中难道不检查sql语句的执行结果是否正确么?