ジャーナルを取得する対象となるデータベースは取得定義で指定します。ジャーナルの取得対象として、以下の指定が行えます。
列単位での指定
複数テーブルの指定
なお、ジャーナルの取得対象となるSQL文は、更新系SQL文(INSERT、UPDATE、DELETE)です。
ジャーナル取得対象の指定方法
ジャーナルの取得対象を列単位で指定できます。これにより、更新データが必要な列のジャーナルだけをテーブルの更新データから容易に抽出できます。
サポートするデータ型はOracle組込みデータ型です。サポートするデータ型の詳細は"表12.1 TJNLにおけるOracleデータベースのデータ型のサポート可否"を参照してください。
1つの取得定義に複数の異なるテーブルの列を指定することができます。これにより、異なるテーブルの更新情報を容易に1つの利用ジャーナルとしてまとめられます。
ジャーナルの取得対象の指定例を"図12.2 ジャーナル取得対象の指定例"に示します。
この例では、個人受注-担当テーブルおよび製品受注-家電テーブルからジャーナルを取得する列を選択し、1つの利用ジャーナルとなるように定義しています。
取得したジャーナルに対して、更新時間やトランザクション状態などの更新データ以外の情報を取得できます。これらの情報は、システム取得項目と呼び、TJNLが自動的に取得します。システム取得項目は、取得定義で指定し、必要に応じた項目を選択できます。システム取得項目の詳細は、"14.1.2.5 システム取得項目"を参照してください。
取得定義によって、ジャーナルの取得対象を更新したデータと利用ジャーナルの関係が決まります。これらの関係を、"図12.3 更新データと利用ジャーナルの関係"に示します。
この図では、1つのトランザクションの処理でデータベース内の異なるテーブルを更新する場合を例にしています。ここでは、同じ形式で内容の異なるジャーナルが、1つのトランザクションの処理で合計3回取得されます。
ジャーナル取得機能の運用を開始した後にジャーナルを取得できます。ジャーナル取得機能の運用を開始する前にデータベースを更新した場合は、ジャーナルは取得されません。ジャーナルは、データベースを更新するトランザクションが正常終了したときにジャーナル取得ファイルに格納されます。