Ir para o conteúdo

Gerador CSV para SQL INSERT

Transforme linhas CSV em instruções SQL INSERT prontas para execução para qualquer banco de dados.

Entrada
Saída

Gerador CSV para SQL INSERT

Cole uma exportação CSV e receba instruções SQL INSERT que você pode executar no MySQL, PostgreSQL, SQLite ou SQL Server. É a maneira mais rápida de propagar uma tabela a partir de uma planilha, carregar dados de acessórios para testes ou mover a exportação de um cliente para um banco de dados real sem abrir um assistente de importação. Defina o nome da tabela, cole as linhas e copie as instruções diretamente na sua ferramenta de consulta.

O analisador segue RFC 4180, portanto, um campo colocado entre aspas duplas pode conter o delimitador, aspas "" duplas e até mesmo quebras de linha sem quebrar uma linha. Os valores são citados da maneira que o SQL espera: números inteiros e decimais permanecem sem aspas, uma célula vazia se torna NULL e todo o resto é colocado entre aspas simples com qualquer apóstrofo duplicado - portanto, um nome como O'Brien é escapado corretamente em vez de terminar a string mais cedo. Como os valores são lidos como texto, os zeros iniciais em códigos postais e códigos de produtos são preservados.

"A primeira linha contém nomes de colunas" usa seu cabeçalho para a lista de colunas; desligue-o e as colunas se tornarão col1, col2 e assim por diante. Escolha o delimitador que corresponde ao seu arquivo – vírgula, ponto e vírgula (comum nas exportações europeias) ou tabulação. Ative "Combinar em um INSERT de várias linhas" e cada linha será agrupada em um único INSERT INTO t (…) VALUES (…),(…),(…); instrução, que carrega muito mais rápido do que uma instrução por linha em grandes importações.

Tudo roda no seu navegador e nada é carregado, o que é importante quando a exportação contém registros de clientes ou dados internos. Copie o SQL, baixe-o como um arquivo .txt ou envie o resultado para outra ferramenta para continuar trabalhando. Revise as instruções geradas antes de executá-las em um banco de dados de produção.

FAQ

Com quais bancos de dados SQL a saída funciona?
As instruções usam a sintaxe INSERT INTO… VALUES padrão, que MySQL, PostgreSQL, SQLite, MariaDB e SQL Server aceitam. As aspas simples são escapadas duplicando-as, a forma portátil que todo mecanismo principal entende.
Como os números, o texto e as células vazias são citados?
Números inteiros e decimais são deixados sem aspas, as células vazias tornam-se NULL e todos os outros valores são colocados entre aspas simples com apóstrofos incorporados duplicados. Um valor como 007 que você deseja manter como texto permanece uma string apenas se não for um número simples.
O que a opção de várias linhas faz?
Em vez de um INSERT por linha, ele emite uma única instrução com muitas tuplas VALUES: INSERT INTO t (…) VALUES (…),(…),(…);. Isso é mais rápido de executar para importações grandes, embora lotes muito longos possam atingir o limite de tamanho de instrução do banco de dados.
Posso usar meus próprios nomes de tabelas e colunas?
Sim. Digite o nome da tabela no campo e a lista de colunas virá da linha do cabeçalho. Desative a opção de cabeçalho se o seu CSV não tiver cabeçalho e as colunas se tornarem col1, col2 e assim por diante.
Meus dados são carregados em algum lugar?
Não. O CSV é analisado e o SQL é construído inteiramente no seu navegador, sem processamento no servidor. As linhas do seu banco de dados e os dados do cliente nunca saem do seu dispositivo.