トランザクションとは、データベースシステムによって 1 つの単位として扱われる一連の SQL 文のことです。トランザクションが実行されると、ある整合性のある状態から別の整合性のある状態にデータベースの状態が変化します。データベースは、トランザクションが中断されると、データベースシステムによってトランザクション開始前の状態に戻されます (ROLLBACK)。
このセクションでは、データベーストランザクションについて説明します。SAP システムでは、トランザクションという用語にはもう 1 つ別の意味があります。
ある整合性のある状態から中間状態を経由して別の整合性のある状態へのデータベースの移行
データベースシステムのトランザクションマネージャによって、複数のデータベースセッションからの並列トランザクションが正しく処理され、これらのトランザクションが順番に処理されたときと同じ結果がもたらされます。
データベースインスタンスにログオンすると、データベースシステムによって最初のトランザクションが開かれます。
トランザクションの最後には、COMMIT または ROLLBACK が発行されます。
● トランザクションが正常に終了し、COMMIT が発行されると、すべてのデータ変更が保持されます。
● トランザクションが ROLLBACK を発行して終了するか、またはその他の方法で強制終了されると、データベースシステムによって、トランザクション中に行われたすべてのデータ変更が取り消されます。
COMMIT と ROLLBACK は、いずれも、新しいトランザクションを暗黙的に開きます。
データベースシステムでは、競合するトランザクションからの同じデータベースオブジェクトへのアクセスが可能であるため、個々のトランザクションを分離するためにロックが必要です。
OMS データに関するトランザクションを実行する場合、データベースシステムでは、整合性のあるビューが使用されます。各トランザクションにおいて、オブジェクトは、データベースシステムによって読み込まれるときに OMS ヒープにコピーされます。トランザクションが COMMIT を発行して終了すると、これらのオブジェクトはデータベースシステムによって OMS ヒープからデータキャッシュにコピーされます。その後、このトランザクションの、OMS ヒープ内にあるすべてのオブジェクトが削除されます。
● 明示的にトランザクションを開いたり、中止および終了したりすることができます。参照
SQL 参照マニュアル、トランザクション
CCMS におけるデータベース管理: MaxDB、トランザクション
CCMS におけるデータベース管理: SAP liveCache テクノロジー、トランザクション
● データを変更するすべてのトランザクションは、データベースシステムによってログエントリに記録されます。データ変更のログ記録を参照してください。
参照: