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
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_HERETempelkan 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/MCP | Mulai 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
- Tempel CSV Anda (dengan baris header) ke dalam kotak input.
- 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).
- Pilih dialek target: MySQL, PostgreSQL, atau SQLite.
- Alihkan Batch INSERT untuk memilih antara satu pernyataan
INSERTdengan beberapa barisVALUES(kompak, lebih sedikit round-trip) atau pernyataanINSERTterpisah per baris (lebih mudah untuk ditinjau atau sebagian dijalankan kembali). - 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.