Oracle的自治事务

pragma autonomous_transaction

它是一种自治事务AT的标识,AT是由主事务MT调用但是独立于MT的事务,在AT被调用执行时,MT被挂起,在AT内部,一系列的DML可以被执行并且commit或rollback,注意由于AT的独立性,它的commit和rollback并不影响MT的执行效果。在AT执行结束后,主事务获得控制权,又可以继续执行了。

CREATE OR REPLACE FUNCTION GET_STR() RETURN VARCHAR IS
  PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
  RETURN 'Hello,World!';
END;

 

你可能感兴趣的:(oracle)