Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
STL_LOADERROR_DETAIL
Mostra un log degli errori di analisi dei dati che si sono verificati durante l'utilizzo di un comando COPY nelle tabelle di caricamento. Per preservare spazio su disco, per ogni operazione di caricamento vengono registrati un massimo di 20 errori per ogni sezione di nodo.
Quando Amazon Redshift non riesce ad analizzare un campo in una riga di dati mentre viene caricato in una tabella, si verifica un errore di analisi. Ad esempio, se una colonna della tabella prevede un tipo di dati di numeri interi e in quel campo il file di dati contiene una stringa di lettere, ciò provoca un errore di analisi.
Dopo aver eseguito una query su STL_LOAD_ERRORS per trovare informazioni generali sull'errore, esegui una query su STL_LOADERROR_DETAIL per dettagli aggiuntivi, ad esempio la riga e la colonna di dati esatte in cui si è verificato un errore di analisi.
La vista STL_LOADERROR_DETAIL contiene tutte le colonne di dati, inclusa la colonna in cui si è verificato l'errore di analisi e quelle precedenti. Utilizza il campo VALUE per visualizzare il valore di dati effettivamente analizzato in questa colonna, incluse le colonne che sono state analizzate correttamente prima dell'errore.
Questa vista è visibile a tutti gli utenti. Gli utenti con privilegi avanzati visualizzano tutte le righe; gli utenti regolari visualizzano solo i propri dati. Per ulteriori informazioni, consulta Visibilità dei dati nelle tabelle e nelle viste di sistema.
Nota
STL_LOADERROR_DETAIL contiene solo le query eseguite sui cluster principali con provisioning. Non contiene query eseguite su cluster con scalabilità simultanea o su namespace senza server. Per accedere ai piani esplicativi per le query eseguite su entrambi i cluster principali, i cluster con scalabilità simultanea e i namespace senza server, ti consigliamo di utilizzare la vista di monitoraggio SYS. SYS_LOAD_ERROR_DETAIL I dati nella vista di monitoraggio SYS sono formattati in modo da essere più facili da usare e comprendere.
Colonne di tabella
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
userid | integer | ID dell'utente che ha generato la voce. |
sezione | integer | Sezione in cui si è verificato l'errore. |
session | integer | ID di sessione per la sessione che esegue il carico. |
query | integer | ID query. La colonna di query può essere utilizzata per unire altre tabelle e visualizzazioni del sistema. |
filename | character(256) | Percorso completo verso il file di input per il carico. |
line_number | bigint | Numero di riga nel file di importazione con l'errore. |
field | integer | Campo con l'errore. |
colname | character(1024) | Nome della colonna. |
value | character(1024) | Valore dei dati del campo analizzati. (Può essere troncato). I caratteri multibyte nei dati di caricamento sono sostituiti da un punto. |
is_null | integer | Se il valore analizzato è null o meno. |
tipo | character(10) | Tipo di dati del campo. |
col_length | character(10) | Lunghezza della colonna, se applicabile. Questo campo è popolato quando il tipo di dati ha una lunghezza limite. Ad esempio, per una colonna con un tipo di dati di "character(3)", questa colonna conterrà il valore "3". |
Query di esempio
La query seguente collega STL_LOAD_ERRORS a STL_LOADERROR_DETAIL per visualizzare i dettagli di un errore di analisi verificatosi durante il caricamento della tabella EVENT, che ha un ID di tabella di 100133:
select d.query, d.line_number, d.value, le.raw_line, le.err_reason from stl_loaderror_detail d, stl_load_errors le where d.query = le.query and tbl = 100133;
Il seguente output di esempio mostra le colonne il cui caricamento è riuscito, inclusa la colonna con l'errore. In questo esempio, in due colonne il caricamento è riuscito prima che si verificasse l'errore di analisi nella terza colonna, in cui una stringa di caratteri è stata erroneamente analizzata per un campo che prevedeva un integer. Poiché il campo prevedeva un integer, ha analizzato la stringa "aaa", che sono dati non inizializzati, come null e ha generato un errore di analisi. L'output mostra il valore non elaborato, il valore analizzato e il motivo dell'errore:
query | line_number | value | raw_line | err_reason -------+-------------+-------+----------+---------------- 4 | 3 | 1201 | 1201 | Invalid digit 4 | 3 | 126 | 126 | Invalid digit 4 | 3 | | aaa | Invalid digit (3 rows)
Quando una query collega STL_LOAD_ERRORS e STL_LOADERROR_DETAIL, mostra un motivo di errore per ogni colonna nella riga di dati, il che significa semplicemente che si è verificato un errore in quella riga. L'ultima riga nei risultati è la colonna in cui si è effettivamente verificato l'errore.