Etapa 4. Copiar dados para a tabela de destino¶
Execute COPY INTO <tabela> para carregar seus dados preparados na tabela de destino.
O comando COPY INTO <tabela> utiliza o warehouse virtual que você criou em Etapa 2. Criar objetos Snowflake para copiar arquivos.
COPY INTO emp_basic FROM @%emp_basic FILE_FORMAT = (type = csv field_optionally_enclosed_by='"') PATTERN = '.*employees0[1-5].csv.gz' ON_ERROR = 'skip_file';
Onde:
A cláusula
FROM
especifica o local que contém os arquivos de dados (o estágio interno da tabela).A cláusula
FILE_FORMAT
especifica o tipo de arquivo como CSV e o caractere de aspas duplas ("
) como o caractere usado para delimitar cadeias de caracteres. O Snowflake oferece suporte a diversos tipos e opções de arquivos. Eles estão descritos em CREATE FILE FORMAT.A cláusula
PATTERN
especifica que o comando deve carregar dados dos nomes dos arquivos que correspondem a esta expressão regular (.*employees0[1-5].csv.gz
).A cláusula
ON_ERROR
especifica o que fazer quando o comando COPY encontra erros nos arquivos. Por padrão, o comando interrompe o carregamento de dados quando o primeiro erro é encontrado. No entanto, demos uma instrução para que ele pule qualquer arquivo que contenha erro e prossiga para carregar o próximo arquivo. Lembre-se que isso é apenas um exemplo. Nenhum arquivo deste tutorial contém erros.
O comando COPY também oferece uma opção para validação dos arquivos antes do carregamento. Para obter mais instruções de validação e verificação de erros, consulte o tópico COPY INTO <tabela> e os outros tutoriais de carregamento de dados.
O comando COPY retorna um resultado mostrando a lista de arquivos copiados e informações relacionadas:
+--------------------+--------+-------------+-------------+-------------+-------------+-------------+------------------+-----------------------+-------------------------+ | file | status | rows_parsed | rows_loaded | error_limit | errors_seen | first_error | first_error_line | first_error_character | first_error_column_name | |--------------------+--------+-------------+-------------+-------------+-------------+-------------+------------------+-----------------------+-------------------------| | employees02.csv.gz | LOADED | 5 | 5 | 1 | 0 | NULL | NULL | NULL | NULL | | employees04.csv.gz | LOADED | 5 | 5 | 1 | 0 | NULL | NULL | NULL | NULL | | employees05.csv.gz | LOADED | 5 | 5 | 1 | 0 | NULL | NULL | NULL | NULL | | employees03.csv.gz | LOADED | 5 | 5 | 1 | 0 | NULL | NULL | NULL | NULL | | employees01.csv.gz | LOADED | 5 | 5 | 1 | 0 | NULL | NULL | NULL | NULL | +--------------------+--------+-------------+-------------+-------------+-------------+-------------+------------------+-----------------------+-------------------------+