WHERE句とキー列を指定してソース ビューからターゲット テーブルまたはターゲット ビューへ部分データコピーを行なうことができます。これはデータ テーブルの部分コピーによく似ています。
次の例は、ソース ビューからの部分データ コピーを示します。
<views> <view selection="included" copyData="true"> <name>deptsals</name> <database>MyDb</database> <view_data_table> <target_table>TargetTable</target_table> <target_database>TargetDb</target_database> </view_data_table> <staging_database> <name>TargetDb_Staging</name> </staging_database> <compare_ddl>true</compare_ddl> <sql_where_clause><![CDATA[ WHERE "deptsals"."employee_number" = 1]]></sql_where_clause> <key_columns> <key_column>employee_number</key_column> </key_columns> </view> </views>
上の例では、WHERE句を含むSELECT文を使用して、"employee_number" = 1であるビューからデータを選択し、部分データをターゲット テーブルにロードしています。SQL WHERE句を指定する場合は、キー列が指定されていなければなりません。
ビュー定義またはビューのデータは、ビューに関連付けられたテーブルをコピーしなくてもコピーすることができます。
ターゲット ビューへのビュー データの部分コピーを実行すると、最初に条件適合行がステージング テーブルにコピーされます。ステージング テーブルに行がコピーされた後に、WHERE句の条件適合記録がステージング テーブルからターゲット ビューにコピーされます。このプロセスは、データが格納されているターゲット テーブルが存在する場合の部分テーブル コピーに似ています。