DB2 Version 10.1 for Linux, UNIX, and Windows

システム期間テンポラル表

システム期間テンポラル表は、その行の履歴バージョンを保守する表です。 システム期間テンポラル表は、データの現行バージョンを保管するために使用し、それに関連した履歴表は、更新または削除されたデータ行を透過的に保管するために使用されます。

システム期間テンポラル表には、行のデータが現行データである期間の開始時刻と終了時刻をキャプチャーする列を持つ、SYSTEM_TIME 期間が含まれます。 また、データベース・マネージャーは、各表の行が更新または削除されるたびに履歴バージョンを保存するためにも SYSTEM_TIME 期間を使用します。 データベース・マネージャーは、システム期間テンポラル表と排他的に関連付けられる履歴表にこれらの行を保管します。 バージョン管理を追加すると、システム期間テンポラル表と履歴表の間にリンクが確立されます。 システム期間テンポラル表があると、照会によって現時点のデータにアクセスすること、および過去の時点からデータを取り出すことができます。

システム期間テンポラル表には、トランザクション開始 ID 列も含まれます。 この列は、行に影響を与えるトランザクションの実行が開始した時刻をキャプチャーします。 単一 SQL トランザクション内で複数の行が挿入または更新される場合、トランザクション開始 ID 列の値は、すべての行について同じであり、他のトランザクションでその列に対して生成される値とは異なる固有の値になります。 このように開始 ID 列の値が共通であるということは、トランザクション開始 ID 列を使用することによって、同じトランザクションによって作成された表の行をすべて識別できることを意味します。