Lewati ke konten utama

Konverter CSV ke SQL

Ubah data CSV dengan baris header menjadi pernyataan CREATE TABLE dan INSERT — menyimpulkan jenis setiap kolom (INTEGER/REAL/TEXT), memilih tanda kutip pengidentifikasi MySQL/PostgreSQL/SQLite, dan mengelola nilai string.

Input

Disanitasi menjadi pengidentifikasi SQL yang valid: huruf, digit, garis bawah — tidak boleh dimulai dengan digit.

Matikan untuk menghasilkan satu pernyataan INSERT per baris.

Output

Keluaran SQL
 
Apakah ini membantu?

Cara lain menggunakan alat ini

REST API

curl -X POST https://api.iotools.cloud/v1/tool/csv-to-sql \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "csvInput": "id,name,price\n1,Widget,9.99\n2,\"O'Brien's Gadget\"…",
    "tableName": "products",
    "dialect": "mysql",
    "batchInserts": "true"
  }'

Ganti dengan kunci Anda sendiri dari akun Anda. Bidang alat menjadi isi permintaan — tanpa pembungkus.

Tanyakan ke agen AI

Use the IOTools `csv-to-sql` tool (CSV to SQL Converter) on this input:

YOUR_INPUT_HERE

Tempelkan ini ke agen mana pun yang terhubung ke server MCP IOTools, lalu tambahkan input Anda.

Widget sematan

<iframe
  src="https://iotools.cloud/embed/csv-to-sql/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="Konverter CSV ke SQL — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

Tempelkan ini di halaman Anda sendiri — gratis, tanpa kunci, cukup tautan balik.

Biaya per panggilan API/MCPMulai dari 5 kredit
Butuh kredit lebih?Lihat harga

Juga tersedia melalui

Panduan

Salin-tempel data CSV — ekspor spreadsheet, dump database, atau daftar cepat yang Anda ketik dengan tangan — dan dapatkan SQL yang siap dijalankan: pernyataan CREATE TABLE yang cocok dengan kolom Anda, diikuti dengan pernyataan INSERT yang memuat setiap baris data. Ini adalah cara tercepat untuk mengisi tabel database baru dari beberapa baris tanpa menulis skema dengan tangan.

Cara kerjanya

Tempel CSV dengan baris header di baris pertama. Konverter menganggap baris itu sebagai nama kolom Anda dan setiap baris setelahnya sebagai data. Penguraian mengikuti RFC 4180: bidang yang dibungkus dalam tanda kutip ganda dapat berisi koma atau baris baru, dan "" ganda di dalam bidang yang dikutip menjadi literal ".

Penyimpulan tipe melihat setiap nilai dalam kolom (mengabaikan yang kosong) dan mengklasifikasikannya:

  • INTEGER — setiap nilai bukan kosong adalah angka bulat (42, -7).
  • REAL / DECIMAL / NUMERIC — setiap nilai bukan kosong memiliki titik desimal (9.99, -3.5). Nama tipe yang tepat tergantung pada dialek.
  • TEXT / VARCHAR — apa pun yang lain, termasuk kolom yang mencampur angka bulat dan desimal.

Kolom yang sepenuhnya kosong default ke TEXT. Sel kosong menjadi NULL dalam pernyataan INSERT yang dihasilkan terlepas dari jenis kolom.

Dialek mengontrol tanda kutip pengidentifikasi dan nama jenis kolom:

Dialek Tanda kutip pengidentifikasi INTEGER REAL/desimal TEXT
MySQL `backtick` INT DECIMAL(10,2) VARCHAR(255)
PostgreSQL "tanda kutip ganda" INTEGER NUMERIC(10,2) TEXT
SQLite "tanda kutip ganda" INTEGER REAL TEXT

Nilai teks dibungkus dalam tanda kutip tunggal, dengan tanda kutip tunggal internal digandakan (it's menjadi 'it''s') — konvensi pengatasan standar SQL-92 yang setiap database besar memahami.

Cara menggunakannya

  1. Tempel CSV Anda (dengan baris header) ke dalam kotak input.
  2. Tetapkan nama tabel — apa pun yang Anda ketik disanitasi menjadi pengidentifikasi yang valid secara otomatis (karakter non-alfanumerik menjadi garis bawah, dan nama yang dimulai dengan digit mendapat garis bawah di depan).
  3. Pilih dialek target: MySQL, PostgreSQL, atau SQLite.
  4. Alihkan Batch INSERT untuk memilih antara satu pernyataan INSERT dengan beberapa baris VALUES (kompak, lebih sedikit round-trip) atau pernyataan INSERT terpisah per baris (lebih mudah untuk ditinjau atau sebagian dijalankan kembali).
  5. Salin atau unduh SQL yang dihasilkan.

FAQ

Apakah akan mendeteksi tipe yang salah untuk kolom saya? Jika kolom mencampur format — beberapa angka bulat, beberapa desimal, atau label teks sesekali seperti "N/A" — ia kembali ke TEXT sehingga tidak ada nilai numerik yang secara diam-diam dibulatkan atau ditolak. Bersihkan kolom yang dicampur di spreadsheet Anda terlebih dahulu jika Anda menginginkan jenis kolom numerik.

Apa yang terjadi pada sel kosong? Mereka menjadi NULL dalam pernyataan INSERT, terlepas dari jenis kolom yang disimpulkan.

Apakah mendukung SQL Server atau Oracle? Tidak saat ini — alat ini menargetkan MySQL, PostgreSQL, dan SQLite, yang mencakup sebagian besar kasus penggunaan yang di-host sendiri dan tertanam.

Apakah data saya diunggah di mana saja? Tidak. Penguraian dan pembuatan SQL berjalan sepenuhnya di browser Anda — data CSV Anda tidak pernah meninggalkan perangkat Anda.

csvsqldatabaseconverterinsertcreate table

Suka alat-alatnya? Hilangkan iklannya.

Satu kali pembayaran menghapus semua iklan dari akun Anda, selamanya. Tanpa langganan, tanpa pelacakan.