経験Hibernateのカスケードは、保存Oracleのトリガーとの取引を保存します

1、マルチテーブルのカスケードは、Springのトランザクションの共同使用の下で、単一の保存、カスケードやサービスで複数のテーブルを保存し、保存し、トランザクション特性は以下のとおりです。

      (1)原子性:トランザクション全体のすべての操作、完了またはリンクの途中で立ち往生すべて不可能完了していないのいずれかを。トランザクションの実行中にエラーが発生したトランザクションが同じことを行ったことがないとして、それは、トランザクションの開始前の状態に(ロールバック)にロールバックされます。
      (2)一貫性:トランザクションが開始され、トランザクションの終了後に、データベースの整合性制約が破損していない前に。
      (3)単離:分離トランザクションの実行を、それらが所定の時間内に実行される唯一のオペレーティングシステムであれば、そのよう。同時に実行している2つのトランザクションがある場合は、同じ機能を実行する、分離トランザクションは、トランザクションがシステムを使用するシステムで、各トランザクションを確実にします。この特性は、時にはシリアライゼーションとして、トランザクション・オペレーションの間に混乱を防ぐ、またはシリアライズシリアライズ要求であるために、同じデータに対して同時に一つだけ要求するように呼ばれます。
      (4)永続性:トランザクションが完了した後、データベースに加えられた堅固変更は永続的なデータベースに格納される、及びロールバックされません。

:トランザクション上記複数のテーブルで確立動作が直面するであろう2、トリガーの問題
  ようなカスケードとしてAは、テーブルを保存し、表II、表上のトリガーが挿入または更新トリガー後に必要なデータを構築する際にテーブルからIおよび表II:表IIのデータは、すでに表IIのデータを読み始め、テーブルの上にトリガを挿入または更新されません。不正確なデータが得られ。

  B、トランザクションは、表IIに有し、挿入操作削除した、テーブルも確立2つの挿入行レベルは、スケジュールIIIと行レベルトリガの削除をトリガします。(二つの手動挿入は、通常、表IIIのデータをトリガすることができる二つの欠失を行うためにデータベーステーブルをトリガする):プログラム動作は、のみ削除するデータ挿入せずに、表示されます。疑いのあるトランザクションがないことが予想されます(ここでは謙虚にアドバイスを求める)などのデータベース操作の結果として、リソース消費が生じました。

おすすめ

転載: www.cnblogs.com/hanzhiyong/p/11506101.html