Pular para o conteúdo
SPCX Tools

CSV para SQL

Converta dados CSV instantaneamente em comandos SQL CREATE TABLE e INSERT.

Roda localmente — os arquivos não saem do seu dispositivo

Carregando ferramenta…

Como usar: CSV para SQL

  1. 1Cole seus dados CSV na caixa de entrada ou clique em Exemplo para ver como a formatação funciona.
  2. 2Insira o nome da tabela de destino e selecione o dialeto de banco de dados da sua preferência (MySQL, PostgreSQL, SQLite ou SQL Server).
  3. 3Configure as opções para incluir um comando CREATE TABLE, fazer inserts em lote ou tratar células vazias como NULL.
  4. 4Copie o SQL gerado ou baixe diretamente como um arquivo .sql.

Um conversor de CSV para SQL rápido e privado

Transformar dados de planilhas em um formato de banco de dados relacional é uma tarefa comum para desenvolvedores, administradores de banco de dados e analistas de dados. Esta ferramenta permite converter CSV para SQL diretamente no seu navegador. Seja para popular um novo banco de dados, migrar registros legados ou importar rapidamente um conjunto de dados, você pode gerar instruções INSERT a partir de dados CSV em segundos.

Como todo o processo de conversão ocorre localmente no seu dispositivo, seus dados nunca são enviados para um servidor externo. Isso garante total privacidade e segurança, permitindo processar dados confidenciais de usuários, registros financeiros ou informações proprietárias de forma segura, sem risco de exposição.

Como funciona a inferência automática de tipos

Escrever um schema manualmente para um conjunto de dados com dezenas de colunas é trabalhoso. Para economizar tempo, esta ferramenta lê automaticamente seus dados CSV e infere o tipo de dado SQL mais adequado para cada coluna. Ela analisa os valores reais nas linhas (ignorando células vazias) e aplica as seguintes regras:

  • INTEGER: Atribuído se todos os valores da coluna forem números inteiros (ex: 42, -15).
  • DECIMAL: Atribuído se os valores forem números de ponto flutuante ou usarem notação científica (ex: 3.14, -0.5).
  • BOOLEAN: Atribuído se a coluna contiver apenas true ou false (sem distinção entre maiúsculas e minúsculas).
  • DATE: Atribuído se os valores corresponderem ao formato de data padrão ISO (YYYY-MM-DD).
  • TEXT / VARCHAR: O tipo padrão atribuído se a coluna contiver dados mistos, texto simples ou formatos que não se encaixem nos padrões rigorosos acima.

Se você optar por gerar uma instrução CREATE TABLE, esses tipos inferidos serão mapeados automaticamente para a sintaxe correta do dialeto de banco de dados escolhido.

Dialetos SQL suportados

Diferentes mecanismos de banco de dados têm regras específicas para delimitar identificadores (como nomes de tabelas e colunas), definir tipos de dados e formatar valores literais. Esta ferramenta suporta quatro dialetos principais para garantir que o SQL gerado seja executado sem erros de sintaxe:

MySQL: Ao converter CSV para MySQL, a ferramenta envolve os nomes de tabelas e colunas em crases (`). Por padrão, colunas de texto usam VARCHAR(255) e valores booleanos são escritos como TRUE ou FALSE.

PostgreSQL: Os identificadores são delimitados por aspas duplas ("). Colunas de texto usam o tipo TEXT, que é o padrão e altamente eficiente no Postgres. Valores booleanos têm suporte nativo como TRUE ou FALSE.

SQLite: Os identificadores usam aspas duplas. Como o SQLite usa tipagem dinâmica com um conjunto restrito de classes de armazenamento, números decimais são mapeados para REAL, booleanos para INTEGER (gerando 1 ou 0) e textos usam a afinidade TEXT.

SQL Server (T-SQL): Os identificadores são delimitados por colchetes ([]). Por padrão, colunas de texto usam VARCHAR(255) e booleanos são mapeados para o tipo de dados BIT (gerando 1 ou 0). Além disso, se uma string de texto contiver caracteres não ASCII, a ferramenta adiciona automaticamente o prefixo N (ex.: N'Value') para garantir a inserção correta em Unicode (NVARCHAR).

Personalizando a saída do seu SQL

Você pode ajustar o script SQL gerado para atender exatamente às suas necessidades usando as opções de configuração:

  • Nome da tabela: Defina o nome exato da tabela de destino. A ferramenta aplicará automaticamente as aspas corretas para o seu dialeto.
  • Incluir CREATE TABLE: Se você estiver criando um banco de dados do zero, ative esta opção para gerar a definição do esquema antes dos comandos de inserção. A ferramenta usa os cabeçalhos do seu CSV como nomes das colunas.
  • Inserções em lote: Executar milhares de comandos INSERT INTO individuais pode ser lento. Ativar a opção de lote agrupa até 500 linhas em um único comando de inserção de CSV para SQL. Isso reduz drasticamente o tamanho do arquivo e melhora o desempenho da importação.
  • Células vazias como NULL: Planilhas costumam ter células em branco. Marcar esta opção garante que strings vazias no seu CSV sejam escritas explicitamente como a palavra-chave NULL no SQL, em vez de inserir strings vazias ('') no seu banco de dados.

Dicas para preparar seus dados CSV

Para obter os melhores resultados, certifique-se de que seu arquivo CSV tenha uma linha de cabeçalho. A ferramenta usa a primeira linha dos seus dados para nomear as colunas nas instruções CREATE TABLE e INSERT. Se o cabeçalho de uma coluna estiver em branco, ela será nomeada automaticamente como column_1, column_2, etc.

Se os seus dados contiverem textos complexos com vírgulas, quebras de linha ou aspas, verifique se o CSV está formatado corretamente (geralmente envolvendo o campo com aspas duplas). A ferramenta inclui um parser de CSV robusto que lida corretamente com aspas escapadas e campos de várias linhas.

Se precisar processar seus dados em outros formatos, nossos conversores de CSV para JSON ou CSV para Excel também podem ser úteis. Depois que o SQL for gerado, você pode passá-lo por um Formatador de SQL se precisar ajustar a indentação ou as letras maiúsculas e minúsculas das palavras-chave.

Perguntas frequentes

Como a ferramenta infere os tipos de dados SQL?
O conversor analisa os dados de cada coluna (ignorando células vazias). Se todos os valores seguirem um padrão específico, ele atribui o tipo correspondente: INTEGER para números inteiros, DECIMAL para números decimais, BOOLEAN para valores verdadeiro/falso e DATE para o formato YYYY-MM-DD. Se os dados forem mistos ou não seguirem esses padrões, o padrão será TEXT ou VARCHAR.
Meus dados CSV são enviados para um servidor?
Não. Todo o processamento e a geração do SQL ocorrem localmente no seu navegador via JavaScript. Seus dados nunca saem do seu dispositivo, tornando a ferramenta totalmente segura para registros sensíveis, confidenciais ou proprietários.
O que faz a opção "Lote" (Batch)?
Quando ativada, a ferramenta agrupa até 500 linhas de dados em uma única instrução INSERT de múltiplas linhas. Isso reduz significativamente o tamanho do arquivo SQL gerado e acelera o tempo de execução ao rodar o script no seu banco de dados.
Como as células vazias são tratadas?
Se você marcar "Vazio como NULL", qualquer célula em branco no seu CSV será escrita com a palavra-chave NULL no SQL gerado. Se desmarcada, as células vazias serão tratadas como strings vazias ('') em colunas de texto, ou mantidas como NULL em colunas numéricas, onde uma string vazia causaria erro de sintaxe.
Por que os tipos de dados gerados mudam quando altero o dialeto?
Sistemas de banco de dados diferentes usam palavras-chave diferentes para tipos de coluna. Por exemplo, uma coluna booleana é representada como BOOLEAN no PostgreSQL, mas como BIT no SQL Server e INTEGER no SQLite. A ferramenta ajusta automaticamente a sintaxe do CREATE TABLE e a formatação dos dados para corresponder ao dialeto selecionado.