Categorias:

Funções de tabela

VALIDATE

Valida os arquivos carregados em uma execução passada do comando COPY INTO <tabela> e retorna todos os erros encontrados durante o carregamento, em vez de retornar apenas o primeiro erro.

Sintaxe

VALIDATE( [<namespace>.]<table_name> , JOB_ID => { '<query_id>' | '_last' } )
Copy

Argumentos

[namespace.]table_name

Especifica o nome totalmente qualificado da tabela que era o destino do carregamento.

O namespace é o banco de dados e/ou esquema no qual a tabela reside, na forma de database_name.schema_name ou schema_name. É opcional se um banco de dados e um esquema estiverem em uso atualmente dentro da sessão do usuário; caso contrário, ele é obrigatório.

JOB_ID => query_id | _last

A ID do o comando COPY INTO <tabela> a ser validado:

  • A ID pode ser obtida na coluna Query ID na página History History tab em Classic Console. A ID da consulta especificada deve ter sido para a tabela de destino especificada.

  • Se _last for especificado em vez de query_id, a função valida o último carregamento executado durante a sessão atual, independentemente da tabela de destino especificada.

Notas de uso

  • A validação não retorna resultados para instruções COPY que especificam ON_ERROR = ABORT_STATEMENT (valor padrão).

  • A validação falha se:

    • Instruções SELECT usadas para transformar dados durante uma operação COPY INTO <tabela>.

    • O usuário atual não tiver acesso ao table_name.

    • O usuário atual não for o usuário que executou query_id e não tiver privilégios de controle de acesso sobre este usuário.

    • Os metadados do histórico de cópias expiraram. Para obter mais informações, consulte Metadados de carregamento.

  • Se novos arquivos foram adicionados ao estágio utilizado por query_id desde que o carregamento for executado, os novos arquivos adicionados são ignorados durante a validação.

  • Se os arquivos foram removidos do estágio utilizado por query_id desde que o carregamento foi executado, os arquivos removidos são reportados como desaparecidos.

Exemplos

Retornar erros para o último comando COPY executado:

SELECT * FROM TABLE(VALIDATE(t1, JOB_ID => '_last'));
Copy

Retornar erros especificando uma ID de consulta obtida da página Query History na Snowsight ou da página History History tab na Classic Console:

SELECT * FROM TABLE(VALIDATE(t1, JOB_ID=>'5415fa1e-59c9-4dda-b652-533de02fdcf1'));
Copy

A mesma consulta acima, mas salvando os resultados em uma tabela para referência futura:

CREATE OR REPLACE TABLE save_copy_errors AS SELECT * FROM TABLE(VALIDATE(t1, JOB_ID=>'5415fa1e-59c9-4dda-b652-533de02fdcf1'));
Copy