İçeriğe geç
🛠️ToolsShed

SQL INSERT Oluşturucu

Tablo biçimindeki veri girişinden SQL INSERT ifadeleri oluşturun.

Tırnak Stili:
SQL Çıkışı

Bu araç hakkında

SQL INSERT Generator, geliştirici araçlarından biri olup tabuler verileri yürütülebilir SQL INSERT ifadelerine dönüştürür. Bir elektronik tablodan veri taşıyor, test oturumları oluşturuyor veya bir veritabanını başlangıç değerleriyle dolduruyor olsanız da, bu araç INSERT sözdizimini elle yazmanın yorucu işini ortadan kaldırır. Veri yapınızı okur ve MySQL, PostgreSQL, SQLite ve SQL Server dahil olmak üzere çoğu ilişkisel veritabanıyla çalışan söz dizimi bakımından doğru SQL oluşturur.

Aracı kullanmak için, tabuler verilerinizi (bir elektronik tablo, CSV dosyası veya metin tablosundan) giriş alanına yapıştırın ve hedef veritabanı türünü seçin. Oluşturucu otomatik olarak sütunları algılar, veri türlerini çıkarır, özel karakterleri ve kaçış işlemlerini yönetir ve doğrudan veritabanı istemcinize yapıştırmaya hazır temiz SQL kodu üretir. Tablo adını özelleştirebilir ve yürütülmeden önce oluşturulan ifadeleri düzenleyebilirsiniz.

Bu araç, test ortamları kuran geliştiriciler, yeni örnekler başlatan veritabanı yöneticileri ve toplu içe aktarımlar hazırlayan veri mühendisleri için özellikle değerlidir. NULL değerleri, dize kaçışları ve tarih biçimlendirmesi gibi yaygın kenar durumlarını işleyerek zaman kazandırır ve içe aktarma işlemlerini kesintiye uğratabilecek söz dizimi hatalarını azaltır.

Sıkça Sorulan Sorular

Kod Uygulaması

# 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.