Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/
GaussDB(for MySQL)/
Perguntas frequentes/
Uso do banco de dados/
Como usar LOAD DATA para importar dados locais?
Atualizado em 2024-09-29 GMT+08:00
Como usar LOAD DATA para importar dados locais?
Você pode usar LOAD DATA para importar dados locais para o GaussDB(for MySQL).
Sintaxe
LOAD DATA LOCAL INFILE 'file_name' [REPLACE | IGNORE] INTO TABLE tbl_name [CHARACTER SET charset_name] [{FIELDS | COLUMNS} [TERMINATED BY 'string'] [[OPTIONALLY] ENCLOSED BY 'char'] ] [LINES [TERMINATED BY 'string'] ] [IGNORE number {LINES | ROWS}] [(col_name_or_user_var [, col_name_or_user_var] ...)]
Parâmetros
- file_name: caminho do arquivo local a ser importado.
- REPLACE | IGNORE: se deve substituir ou ignorar registros duplicados.
- tbl_name: nome da tabela a ser importada.
- CHARACTER SET charset_name: formato de codificação do arquivo. É aconselhável usar o formato de codificação das instâncias do GaussDB(for MySQL) para evitar caracteres ilegíveis.
- FIELDS TERMINATED BY 'string': separador entre colunas. O valor padrão é \t.
- [OPTIONALLY] ENCLOSED BY 'char': usado para ignorar símbolos em campos de origem de dados.
- LINES TERMINATED BY'string??: caractere de nova linha entre linhas. O valor padrão é \n.
Em alguns hosts que executam os servidores Windows, os caracteres de nova linha dos arquivos de texto podem ser \r\n, que é invisível.
- IGNORE number LINES: usado para ignorar linhas no início do arquivo.
- (column_name_or_user_var, ...): colunas a serem importadas. Se esse parâmetro não estiver configurado, os dados serão importados com base na sequência de colunas por padrão.
- Para obter outros parâmetros, consulte o arquivo de dados de carregamento no site oficial do MySQL. A sequência de outros parâmetros deve estar correta. Para detalhes da sequência, visite o site oficial do MySQL.
Exemplo padrão
Pré-requisitos
- O parâmetro local_infile deve ser ativado no servidor. Clique no nome da instância para acessar a página Basic Information. Na página Parameters, altere o valor deste parâmetro para ON.
- O parâmetro local-infile deve ser ativado no cliente. Configure local-infile no arquivo my.cnf ou use a opção --local-infile=1 para se conectar ao banco de dados.
[mysql] local-infile
- Importe os dados no arquivo local qq.txt para a tabela test. O arquivo qq.txt contém cinco linhas de dados. O separador de coluna é ',' e o separador de linha é '\n'.
1,a 2,b 3,c 4,d 5,"e"
- Crie a tabela test.
CREATE TABLE test ( `id` int NOT NULL, `a` varchar(4) NOT NULL, PRIMARY KEY (`id`) );
- No cliente, execute a instrução LOAD DATA para importar dados no arquivo qq.txt para a tabela test, defina o conjunto de caracteres como utf8 e ignore as aspas duplas no campo de fonte de dados.
mysql> LOAD DATA LOCAL INFILE '/data/qq.txt' IGNORE INTO TABLE test CHARACTER SET 'utf8' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'; Query OK, 5 rows affected, 1 warning (0.00 sec) Records: 5 Deleted: 0 Skipped: 0 Warnings: 1 mysql> select * from test; +----+---+ | id | a | +----+---+ | 1 | a | | 2 | b | | 3 | c | | 4 | d | | 5 | e | +----+---+ 5 rows in set (0.00 sec)
- A importação de dados afeta o desempenho das instâncias do GaussDB(for MySQL). Importe dados fora do horário de pico.
- Não inicie várias solicitações LOAD DATA ao mesmo tempo. Quando várias solicitações de LOAD DATA são iniciadas, as transações SQL podem ter um tempo limite devido a operações de gravação de dados altamente simultâneas, bloqueio de tabela e ocupação de I/O do sistema, resultando na falha de todas as solicitações de LOAD DATA.
Tópico principal: Uso do banco de dados
Feedback
Esta página foi útil?
Deixar um comentário
Obrigado por seus comentários. Estamos trabalhando para melhorar a documentação.
O sistema está ocupado. Tente novamente mais tarde.