Generatore di INSERT SQL
Genera istruzioni SQL INSERT da dati tabulari.
Informazioni sullo strumento
SQL INSERT Generator è uno strumento per sviluppatori che converte dati tabulari in istruzioni SQL INSERT pronte per l'esecuzione. Che tu stia migrando dati da un foglio di calcolo, creando fixture di test o popolando un database con valori iniziali, questo strumento elimina il tedioso lavoro manuale di scrivere la sintassi INSERT a mano. Legge la struttura dei tuoi dati e genera SQL sintatticamente corretto che funziona con la maggior parte dei database relazionali, inclusi MySQL, PostgreSQL, SQLite e SQL Server.
Per utilizzare lo strumento, incolla i tuoi dati tabulari (da un foglio di calcolo, file CSV o tabella di testo) nell'area di input e seleziona il tipo di database di destinazione. Il generatore rileva automaticamente le colonne, deduce i tipi di dati, gestisce i caratteri speciali e l'escape, e produce codice SQL pulito pronto per essere incollato direttamente nel tuo client database. Puoi personalizzare il nome della tabella e regolare qualsiasi istruzione generata prima dell'esecuzione.
Questo strumento è particolarmente prezioso per sviluppatori che configurano ambienti di test, amministratori di database che inizializzano nuove istanze e ingegneri dati che preparano importazioni in massa. Gestisce casi limite comuni come valori NULL, escape di stringhe e formattazione delle date, risparmiando tempo e riducendo gli errori di sintassi che potrebbero interrompere le operazioni di importazione.
Domande Frequenti
Implementazione del Codice
# 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.