外部パーティション化されたデータの検証
外部パーティション表を検証するには、プロシージャDBMS_CLOUD.VALIDATE_EXTERNAL_PART_TABLE
を使用します。 このプロシージャには、検証する特定のパーティションを指定できるパラメータが含まれています。
外部パーティション表を検証する前に、外部パーティション表を作成する必要があります。 外部パーティション表を作成するには、DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE
プロシージャを使用します(詳細は「外部パーティション・データの問合せ(パーティショニング句を使用)」を参照):
BEGIN
DBMS_CLOUD.VALIDATE_EXTERNAL_PART_TABLE
(
table_name => 'PET1',
partition_name => 'P1');
END;
/
このプロシージャは、パーティションP1のソース・ファイルをスキャンし、外部パーティション表の作成時に指定された書式オプションを使用してソース・ファイルを検証します。
パーティション表の検証をデフォルトで、rowcount
に到達するまですべてのパーティションが連続して検証されます。 partition_name
を指定すると、特定のパーティションのみが検証されます。
検証操作は、デフォルトでは、ソース・ファイル内のすべての行をスキャンし、行が拒否されたときに停止します。 行のサブセットのみを検証する場合は、rowcount
パラメータを使用します。 rowcount
パラメータが検証操作スキャン行を設定しているときに、行が拒否されるか、または指定したrowcount
行数がエラーなしで検証されると、停止します。
たとえば、次の検証操作は100行をスキャンし、行が拒否された時点、または100行がエラーなしで検証された時点で停止します。
BEGIN
DBMS_CLOUD.VALIDATE_EXTERNAL_PART_TABLE
(
table_name => 'PET1',
rowcount => 100 );
END;
/
行が拒否されても検証を停止せずに、拒否された行をすべて表示する場合は、stop_on_error
パラメータをFALSE
に設定します。 この場合、DBMS_CLOUD.VALIDATE_EXTERNAL_PART_TABLE
はすべての行をスキャンし、拒否されたすべての行をレポートします。
行のサブセットのみを検証する場合は、rowcount
パラメータを使用します。 rowcount
が設定され、stop_on_error
がFALSE
に設定されている場合、検証操作は行をスキャンして、指定された数の行が拒否された時点、または指定された数の行がエラーなしで検証された時点で停止します。 たとえば、次の例は100行をスキャンし、100行が拒否された時点、または100行がエラーなしで検証された時点で停止します。
BEGIN
DBMS_CLOUD.VALIDATE_EXTERNAL_PART_TABLE
(
table_name => 'PET1',
rowcount => 100
stop_on_error => FALSE );
END;
/
DBMS_CLOUD.VALIDATE_EXTERNAL_PART_TABLE
の詳細は、「VALIDATE_EXTERNAL_PART_TABLEプロシージャ」を参照してください。
dba_load_operations
およびuser_load_operations
の表で検証操作の結果を表示するには、「データ検証のログの表示」を参照してください。