Affichage des journaux pour la validation des données

Pour valider une table externe, utilisez les procédures DBMS_CLOUD.VALIDATE_EXTERNAL_TABLE, DBMS_CLOUD.VALIDATE_EXTERNAL_PART_TABLE et DBMS_CLOUD.VALIDATE_HYBRID_PART_TABLE.

Après avoir validé les fichiers source, vous pouvez consulter le résultat de l'opération de validation en interrogeant une table d'opérations de chargement :

  • dba_load_operations : affiche toutes les opérations de validation

  • user_load_operations : affiche les opérations de validation dans votre schéma

Vous pouvez utiliser ces fichiers pour visualiser les informations de validation de chargement. Par exemple, utilisez l'opération de sélection suivante pour interroger user_load_operations :

SELECT table_name, owner_name, type, status, start_time, update_time, logfile_table, badfile_table
FROM user_load_operations
WHERE type = 'VALIDATE';

TABLE_NAME    OWNER_NAME  TYPE       STATUS     START_TIME     UPDATE_TIME    LOGFILE_TABLE    BADFILE_TABLE
------------- ----------  ---------- ---------- -------------- -------------  ---------------  ---------------
CHANNELS_EXT  SH          VALIDATE   COMPLETED  13-NOV-17...   13-NOV-17...   VALIDATE$21_LOG  VALIDATE$21_BAD

L'utilisation de cette instruction SQL avec la clause WHERE sur la colonne TYPE affiche toutes les opérations de chargement de type VALIDATE.

La colonne LOGFILE_TABLE indique le nom de la table que vous pouvez interroger pour consulter le journal d'une opération de validation. Par exemple, la requête suivante affiche le journal de l'opération de validation :

SELECT * FROM VALIDATE$21_LOG;

La colonne BADFILE_TABLE indique le nom de la table que vous pouvez interroger pour consulter les lignes qui ont rencontré des erreurs lors de la validation. Par exemple, la requête suivante affiche les enregistrements rejetés pour l'opération de validation ci-dessus :

SELECT * FROM VALIDATE$21_BAD;

En fonction des erreurs affichées dans le journal et des lignes affichées dans BADFILE_TABLE, vous pouvez corriger l'erreur en supprimant la table externe à l'aide de la commande DROP TABLE et en la recréant avec les options de format appropriées dans DBMS_CLOUD.CREATE_EXTERNAL_TABLE, DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE ou DBMS_CLOUD.CREATE_HYBRID_PART_TABLE.

Remarque

Les tables LOGFILE_TABLE et BADFILE_TABLE sont stockées pendant deux jours pour chaque opération de validation, puis enlevées automatiquement.