- 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.
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'));