Como usar: CSV e Excel para SQL
- Cole células de CSV ou do Excel copiadas, abra um arquivo
.csv/.xlsxou clique em Carregar exemplo. - Escolha o dialeto do seu banco de dados e informe o nome da tabela.
- Escolha as instruções que você precisa:
CREATE TABLEcom os tipos detectados,DROP TABLE, uma transação e quantas linhas entram em cadaINSERT. - Confira os tipos de coluna detectados na pré-visualização e clique em Copiar ou Baixar .sql para executar no seu cliente de banco de dados.
O que é um conversor de CSV para SQL?
Um conversor de CSV para SQL transforma as linhas de uma planilha em instruções SQL que um banco de dados consegue executar: uma instrução CREATE TABLE, que define as colunas, e instruções INSERT INTO … VALUES, que adicionam os dados. É a forma mais rápida de carregar uma exportação pontual, popular um banco de desenvolvimento ou levar dados do Excel para MySQL ou PostgreSQL sem usar um assistente de importação.
CREATE TABLE `customers` (
`id` INT NOT NULL,
`name` VARCHAR(16),
`signup_date` DATE,
`monthly_spend` DECIMAL(10,2),
PRIMARY KEY (`id`)
);
INSERT INTO `customers` (`id`, `name`, `signup_date`, `monthly_spend`) VALUES
(1, 'Ada Lovelace', '2024-01-15', 49),
(4, 'O''Brien, Pat', '2024-04-09', 49);
Como os tipos de coluna são detectados
Cada valor de uma coluna é verificado e escolhe-se o tipo mais restrito que serve para todos eles. A pré-visualização mostra o resultado como um selo acima de cada coluna.
| Valores da coluna | MySQL | PostgreSQL | SQL Server |
|---|---|---|---|
| Números inteiros | INT / BIGINT | INTEGER / BIGINT | INT / BIGINT |
| Decimais | DECIMAL(p,s) | NUMERIC(p,s) | DECIMAL(p,s) |
| true / false | TINYINT(1) | BOOLEAN | BIT |
2024-01-15 | DATE | DATE | DATE |
2024-01-15 14:30:00 | DATETIME | TIMESTAMP | DATETIME2 |
| Texto | VARCHAR(n) / TEXT | VARCHAR(n) / TEXT | NVARCHAR(n) / NVARCHAR(MAX) |
Colunas de texto recebem um tamanho de VARCHAR arredondado para cima a partir do valor mais longo (16, 32, 50, 100, 255…). Revise os tamanhos antes de carregar dados de produção: uma coluna curta na sua amostra pode receber valores maiores depois.
Escape e diferenças entre dialetos
- Aspas dentro de textos são duplicadas (
O'Brien→'O''Brien'); a saída para MySQL também escapa as barras invertidas. - Identificadores são delimitados por crases (MySQL), aspas duplas (PostgreSQL, SQLite, Oracle) ou colchetes (SQL Server), por isso palavras reservadas como
orderougroupfuncionam como nomes de coluna. - Inserções com várias linhas são bem mais rápidas do que uma instrução por linha. O SQL Server aceita no máximo 1.000 linhas por lista
VALUES, e o Oracle usaINSERT ALL … SELECT 1 FROM DUAL. - Células vazias viram
NULLpor padrão; desmarque a opção para inserir strings vazias.
Dicas para importações grandes
Envolva os inserts em uma transação para que uma linha com falha não deixe metade dos dados gravada, e use lotes de 500 a 1.000 linhas. Para milhões de linhas, carregadores nativos como o LOAD DATA INFILE do MySQL ou o COPY do PostgreSQL são ainda mais rápidos. Tem JSON em vez disso? Use o JSON para SQL, e monte uma tabela manualmente com o gerador de CREATE TABLE. Deixe o resultado organizado com o formatador de SQL.
Também pesquisado como: excel para sql, csv para sql insert, csv para mysql, excel para mysql, csv para postgresql, xlsx para sql, gerador de insert sql, gerador sql insert.
Ferramentas que combinam com: CSV e Excel para SQL
- SQL para JSON, CSV e Excel — Cole um dump SQL ou algumas instruções INSERT e receba as linhas em JSON, CSV ou em uma planilha Excel com uma aba por tabela.
- Excel para JSON — Abra uma pasta de trabalho .xlsx ou cole células direto do Excel ou do Google Sheets e receba um JSON limpo.
- CSV para JSON — Cole um CSV ou TSV e receba um array JSON de objetos.
- JSON para Excel — Transforme um array JSON em uma planilha Excel de verdade.
Perguntas frequentes
Como converto uma planilha do Excel em instruções SQL INSERT?
Quais bancos de dados são suportados?
Posso gerar uma instrução INSERT por linha?
Por que os nomes das minhas colunas foram alterados?
data_de_cadastro, o que evita problemas com aspas. Desmarque para manter o texto original do cabeçalho.