Validation des données externes

Pour valider une table externe, utilisez la procédure DBMS_CLOUD.VALIDATE_EXTERNAL_TABLE.

Pour valider une table externe partitionnée, reportez-vous à Validation des données partitionnées externes. Cette procédure inclut un paramètre qui vous permet d'indiquer une partition spécifique à valider.

Pour valider une table partitionnée hybride, reportez-vous à Validation des données partitionnées hybrides. Cette procédure inclut un paramètre qui vous permet d'indiquer une partition spécifique à valider.

Avant de valider une table externe, vous devez la créer. Pour créer une table externe, utilisez la procédure correspondant à votre type de table, par exemple DBMS_CLOUD.CREATE_EXTERNAL_TABLE. Exemples :

BEGIN
  DBMS_CLOUD.VALIDATE_EXTERNAL_TABLE (
    table_name => 'CHANNELS_EXT' );
END;
/

Cette procédure analyse vos fichiers source et les valide à l'aide des options de format spécifiées lorsque vous créez la table externe.

Par défaut, l'opération de validation analyse toutes les lignes de vos fichiers source et s'arrête lorsqu'une ligne est rejetée. Pour valider uniquement un sous-ensemble de lignes, utilisez le paramètre rowcount. Lorsque le paramètre rowcount est défini, l'opération de validation analyse les lignes et s'arrête lorsqu'une ligne est rejetée ou lorsque le nombre de lignes spécifié est validé sans erreur.

Par exemple, l'opération de validation suivante analyse 100 lignes et s'arrête lorsqu'une ligne est rejetée ou lorsque 100 lignes sont validées sans erreur :

BEGIN 
  DBMS_CLOUD.VALIDATE_EXTERNAL_TABLE (
     table_name => 'CHANNELS_EXT',
     rowcount => 100 ); 
END; 
/

Si vous ne voulez pas que la validation s'arrête lorsqu'une ligne est rejetée et que vous voulez visualiser toutes les lignes rejetées, définissez le paramètre stop_on_error sur FALSE. Dans ce cas, VALIDATE_EXTERNAL_TABLE analyse toutes les lignes et signale toutes les lignes rejetées.

Pour valider uniquement un sous-ensemble de lignes, utilisez le paramètre rowcount. Lorsque rowcount est défini et que stop_on_error est défini sur FALSE, l'opération de validation analyse les lignes et s'arrête lorsque le nombre de lignes spécifié est rejeté ou lorsque le nombre de lignes spécifié est validé sans erreur. L'exemple suivant analyse 100 lignes et s'arrête lorsque 100 lignes sont rejetées ou lorsque 100 lignes sont validées sans erreur :

BEGIN 
  DBMS_CLOUD.VALIDATE_EXTERNAL_TABLE (
     table_name => 'CHANNELS_EXT',
     rowcount => 100 
     stop_on_error => FALSE );
END; 
/

Pour obtenir des informations détaillées sur les paramètres DBMS_CLOUD.VALIDATE_EXTERNAL_TABLE, reportez-vous à Procédure VALIDATE_EXTERNAL_TABLE.

Reportez-vous à Affichage des journaux pour la validation des données pour consulter les résultats des opérations de validation dans les tables dba_load_operations et user_load_operations.