- Kategorien:
VALIDATE¶
Validiert die Dateien, die bei einer früheren Ausführung des Befehls COPY INTO <Tabelle> geladen wurden, und gibt nicht nur den ersten Fehler, sondern alle Fehler zurück, die beim Laden aufgetreten sind.
Syntax¶
VALIDATE( [<namespace>.]<table_name> , JOB_ID => { '<query_id>' | '_last' } )
Argumente¶
[namespace.]table_name
Gibt den vollständig qualifizierten Namen der Tabelle an, die das Ladeziel war.
Namespace ist die Datenbank und/oder das Schema, in dem sich die Tabelle befindet, in Form von
database_name.schema_name
oderschema_name
. Die Angabe ist optional, wenn in der Benutzersitzung aktuell eine Datenbank und ein Schema verwendet werden, andernfalls ist die Angabe obligatorisch.JOB_ID => query_id | _last
Die ID für den zu validierenden Befehl COPY INTO <Tabelle>:
Die ID kann der Query ID-Spalte auf der Seite History der klassischen Weboberfläche entnommen werden. Die angegebene Abfrage-ID muss für die angegebene Zieltabelle bestimmt gewesen sein.
Wenn
_last
anstelle vonquery_id
angegeben wird, überprüft die Funktion den letzten Ladevorgang, der während der aktuellen Sitzung ausgeführt wurde, unabhängig von der angegebenen Zieltabelle.
Nutzungshinweise¶
Die Validierung gibt keine Ergebnisse für COPY-Anweisungen zurück, in denen
ON_ERROR = ABORT_STATEMENT
(Standardwert) angegeben ist.Die Validierung schlägt in folgenden Fällen fehl:
SELECT-Anweisungen werden verwendet, um Daten während einer COPY INTO <Tabelle>-Operation zu transformieren.
Der aktuelle Benutzer hat keinen Zugriff auf
table_name
.Der aktuelle Benutzer ist nicht der Benutzer, der
query_id
ausgeführt hat, und verfügt nicht über Zugriffssteuerungsrechte für diesen Benutzer.Die Metadaten des Kopierverlaufs sind abgelaufen. Weitere Informationen dazu finden Sie unter Metadaten laden.
Wenn seit der Ausführung des Ladevorgangs dem von
query_id
verwendeten Stagingbereich neue Dateien hinzugefügt wurden, werden die hinzugefügten Dateien während der Validierung ignoriert.Wenn seit dem Ausführen des Ladevorgangs Dateien aus dem von
query_id
verwendeten Stagingbereich entfernt wurden, werden die entfernten Dateien als fehlend gemeldet.
Beispiele¶
Geben Sie Fehler für den zuletzt ausgeführten COPY-Befehl zurück:
SELECT * FROM TABLE(VALIDATE(t1, JOB_ID => '_last'));
Geben Sie Fehler zurück, indem Sie eine Abfrage-ID angeben, die von der Query History-Seite in Snowsight oder von der Seite History der klassischen Weboberfläche abgerufen wird:
SELECT * FROM TABLE(VALIDATE(t1, JOB_ID=>'5415fa1e-59c9-4dda-b652-533de02fdcf1'));
Gleiche Abfrage wie oben, aber speichern Sie die Ergebnisse in einer Tabelle zur späteren Verwendung:
CREATE OR REPLACE TABLE save_copy_errors AS SELECT * FROM TABLE(VALIDATE(t1, JOB_ID=>'5415fa1e-59c9-4dda-b652-533de02fdcf1'));