Gere CREATE TABLE e instruções INSERT escapadas a partir de CSV com inferência de tipos.
saída
Sobre esta ferramenta
O CSV para SQL é um gerador gratuito, que roda no navegador e converte um CSV colado em instruções SQL: um CREATE TABLE opcional com tipos de coluna inferidos, mais um INSERT escapado por linha. Tudo acontece no seu dispositivo, então seus dados nunca são enviados.
A ferramenta inspeciona cada coluna e infere se ela é um inteiro, decimal, data ou texto, e depois mapeia esses tipos para os tipos e o modo de aspas de identificador corretos do dialeto escolhido — MySQL, PostgreSQL, SQLite ou SQL Server. Valores de string recebem escape com segurança, células vazias viram NULL, e células numéricas ficam sem aspas.
Como roda localmente, é uma forma privada e compatível com uso offline de carregar dados de planilha em um banco de dados sem um assistente de importação, e você pode copiar o SQL ou baixá-lo como um arquivo .sql.
Perguntas frequentes
Como os tipos de coluna são inferidos?
Uma coluna é tipada como inteiro quando todo valor não vazio é um número inteiro, decimal quando os valores são numéricos com frações, date quando correspondem a YYYY-MM-DD (opcionalmente com uma hora), e texto caso contrário. Células em branco são emitidas como NULL.
O que muda entre os dialetos?
O modo de aspas de identificador e os nomes de tipo diferem: MySQL usa crases e INT/VARCHAR, PostgreSQL e SQLite usam aspas duplas (o SQLite prefere INTEGER/REAL/TEXT), e o SQL Server usa colchetes com NVARCHAR. Literais de string usam aspas simples com as aspas internas duplicadas em todos os dialetos.
Quais convenções de CSV são assumidas?
Os campos são divididos pelo delimitador escolhido, campos entre aspas duplas (aspas internas duplicadas) são interpretados para que delimitadores embutidos sobrevivam, e a primeira linha é usada como nomes de coluna quando a opção de cabeçalho está marcada (caso contrário, usam-se column1, column2 …).
Posso pular o CREATE TABLE?
Sim. Desmarque a opção CREATE TABLE para emitir apenas as instruções INSERT — útil quando a tabela de destino já existe e você só precisa das linhas.