2009-08-26 1 views

答えて

17

IMO自律型トランザクションは特に、メインセッションとは独立して実行されます。つまり、メイントランザクションに影響を与えることなく変更をコミットまたはロールバックすることができます。

また、大きな文を実行し、各文の間に自律型トランザクションを追加すると、パフォーマンスのコストはごくわずかです。

面白いかもしれない副作用もあります:自律型トランザクションは呼び出し元トランザクションから独立したセッションになっているため、実行中のメインプロセスの進行に従うことができます。メイントランザクションが完了するのを待つ必要はありません。自律型トランザクションによって満たされているので、ロギングテーブルを照会することができます。

+2

これ以上のことはありません。 – Christian13467

3

明らかに、自律型トランザクションで行われるすべてのログは、メイントランザクションがロールバックされてもデータベースに残ります。ロギングではこれはおそらく必要なことですが、「行YをテーブルYに挿入しました」というログレコードは、その挿入が実際にコミットされたことを意味しないことを覚えておくことが重要です。

関連する問題