Gerador de INSERT SQL
Gere instruções SQL INSERT a partir de entrada de dados tabulares.
Sobre esta ferramenta
SQL INSERT Generator é uma ferramenta para desenvolvedores que converte dados tabulares em instruções SQL INSERT prontas para executar. Se você estiver migrando dados de uma planilha, criando fixtures de teste ou preenchendo um banco de dados com valores iniciais, esta ferramenta elimina o trabalho manual tedioso de escrever a sintaxe INSERT manualmente. Ela lê sua estrutura de dados e gera SQL sintaticamente correto que funciona com a maioria dos bancos de dados relacionais, incluindo MySQL, PostgreSQL, SQLite e SQL Server.
Para usar a ferramenta, cole seus dados tabulares (de uma planilha, arquivo CSV ou tabela de texto) na área de entrada e selecione o tipo de banco de dados de destino. O gerador detecta automaticamente colunas, infere tipos de dados, trata caracteres especiais e escapes, e produz código SQL limpo pronto para colar diretamente em seu cliente de banco de dados. Você pode personalizar o nome da tabela e ajustar qualquer instrução gerada antes da execução.
Esta ferramenta é especialmente valiosa para desenvolvedores que configuram ambientes de teste, administradores de banco de dados que inicializam novas instâncias e engenheiros de dados que preparam importações em massa. Ela trata casos extremos comuns, como valores NULL, escapes de strings e formatação de datas, economizando tempo e reduzindo erros de sintaxe que poderiam interromper operações de importação.
Perguntas Frequentes
Implementação de Código
# Generate SQL INSERT statements from a list of dicts
def generate_inserts(table, rows, batch=False):
if not rows:
return ""
columns = ", ".join(rows[0].keys())
def fmt(v):
if isinstance(v, (int, float)):
return str(v)
return f"'{str(v).replace(chr(39), chr(39)+chr(39))}'"
if batch:
values = ",\n ".join(
"(" + ", ".join(fmt(v) for v in row.values()) + ")"
for row in rows
)
return f"INSERT INTO {table} ({columns})\nVALUES\n {values};"
else:
return "\n".join(
f"INSERT INTO {table} ({columns}) VALUES ({', '.join(fmt(v) for v in row.values())});"
for row in rows
)
rows = [
{"id": 1, "name": "Alice", "email": "alice@example.com"},
{"id": 2, "name": "Bob", "email": "bob@example.com"},
]
print(generate_inserts("users", rows, batch=True))Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.