Konversi CSV ke MariaDB
Letakkan file CSV Anda untuk mendapatkan skrip MariaDB dengan pernyataan CREATE TABLE dan INSERT. Setiap kolom diberi tipe, dan setiap perbaikan dicantumkan beserta baris dan kolomnya.
5 baris dikonversi, 8 perbaikan, tidak ada yang ditolak
| Baris | ||||||
|---|---|---|---|---|---|---|
| 5 | 00412 | Peña Muñoz | Mérida | 15/02/2024 | 1.234,50 | sí |
| 6 | 00413 | José Ángel Ruiz | León | 03/02/2024 | 99,90 | no |
| 7 | 00414 | Zoë Ortíz | Querétaro | 29/02/2024 | N/A | sí |
| 8 | 00415 | Ñuño Castañeda | Oaxaca | 28/02/2024 | 7,25 | no |
| 9 | 00416 | Iñaki Olaizola | Mazatlán | 11/03/2024 | 980,75 | sí |
-- Written by IntoSQL for MariaDB.
SET NAMES utf8mb4;
SET SESSION sql_mode = REPLACE(@@sql_mode, 'NO_BACKSLASH_ESCAPES', '');
START TRANSACTION;
CREATE TABLE ventas_2024 (
folio varchar(8) NOT NULL,
cliente varchar(16) NOT NULL,
ciudad varchar(16) NOT NULL,
fecha date NOT NULL,
importe decimal(6,2),
pagado tinyint(1) NOT NULL
) DEFAULT CHARSET=utf8mb4;
INSERT INTO ventas_2024 (folio, cliente, ciudad, fecha, importe, pagado) VALUES
('00412', 'Peña Muñoz', 'Mérida', '2024-02-15', 1234.50, TRUE),
('00413', 'José Ángel Ruiz', 'León', '2024-02-03', 99.90, FALSE),
('00414', 'Zoë Ortíz', 'Querétaro', '2024-02-29', NULL, TRUE),
('00415', 'Ñuño Castañeda', 'Oaxaca', '2024-02-28', 7.25, FALSE),
('00416', 'Iñaki Olaizola', 'Mazatlán', '2024-03-11', 980.75, TRUE);
COMMIT;
Perbaikan
- File ditulis dalam windows‑1252; file itu dikonversi ke UTF-8.
- Baris judul ada di baris 4; baris di atasnya tidak disertakan.
- Baris 10 ("TOTAL") adalah total, jadi tidak disertakan.
- Nol di depan dipertahankan di "Folio": 00412 tetap 00412, disimpan sebagai teks.
- 15/02/2024 membuktikan tanggal di "Fecha" diawali hari, jadi 03/02/2024 dibaca sebagai 2024‑02‑03.
- Angka di "Importe" memakai koma desimal: 1.234,50 dibaca sebagai 1234.50.
- N/A di "Importe" dibaca sebagai kosong (1 dari 5 nilai).
- "Pagado" berisi kata ya dan tidak (sí, no), disimpan sebagai boolean.
File Anda dikonversi di komputer ini dan tidak pernah diunggah.
Contoh lain:
Dari CSV ke MariaDB, kolom demi kolom
Contoh di atas, ventas_2024.csv, seperti yang ditulis IntoSQL untuk MariaDB: isi setiap kolom di file, tipe yang didapatnya, dan bagaimana nilai pertamanya ditulis di skrip.
| Di file | Nilai pertama | Kolom | Tipe MariaDB | Di skrip |
|---|---|---|---|---|
| Folio | 00412 | folio | varchar(8) | '00412' |
| Cliente | Peña Muñoz | cliente | varchar(16) | 'Peña Muñoz' |
| Ciudad | Mérida | ciudad | varchar(16) | 'Mérida' |
| Fecha | 15/02/2024 | fecha | date | '2024-02-15' |
| Importe | 1.234,50 | importe | decimal(6,2) | 1234.50 |
| Pagado | sí | pagado | tinyint(1) | TRUE |
Muat skrip ke MariaDB
Hasil unduhan adalah file .sql biasa. Jalankan dengan alat bawaan MariaDB.
Dari terminal
mariadb --default-character-set=utf8mb4 mydb < ventas_2024.mariadb.sqlSkrip mengatur utf8mb4 sendiri; flag ini membuat klien mengirimnya dengan cara yang sama, jadi aksen tiba utuh.
Dari alat database
Di HeidiSQL atau DBeaver, buka skrip lalu jalankan.
Tanpa skripPro
IntoSQL Pro memuat file langsung ke MariaDB dari aplikasi desktop atau command line, tanpa menulis skrip.
intosql load ventas_2024.csv --into mariadb://user@localhost/mydbYang perlu diketahui tentang file CSV dan MariaDB
Yang dibaca IntoSQL di file CSV
- Pengodean terdeteksi, termasuk Windows-1252 dan UTF-16, sehingga aksen dan ñ tiba utuh.
- Pemisah terdeteksi: koma, titik koma, tab, atau garis tegak. Dengan titik koma, koma desimal seperti 1.234,50 dibaca sebagai angka.
- Nilai dalam tanda kutip dapat berisi pemisah dan baris baru.
Yang perlu diketahui tentang MariaDB
- Nilai ya dan tidak menjadi tinyint(1). Teks hingga 255 karakter menjadi varchar; teks yang lebih panjang menjadi text, mediumtext, atau longtext sesuai ukurannya.
- Skrip memakai utf8mb4 dan mengatur mode SQL, sehingga aksen, emoji, garis miring terbalik, dan baris baru dimuat sesuai tulisan aslinya.
- Tipe datetime di MariaDB tidak menyimpan zona waktu.
Cara setiap jenis nilai disimpan di MariaDB
| Nilai | MariaDB |
|---|---|
| Ya dan tidak | tinyint(1) |
| Bilangan bulat | int |
| Bilangan bulat besar | bigint |
| Desimal | decimal(p,s)double |
| Bilangan floating-point | double |
| Tanggal | date |
| Jam | time(6)time |
| Tanggal dengan jam | datetime(6)datetime |
| Tanggal dengan jam dan selisih waktu | datetime(6)datetime |
| Teks | varchar(n)textmediumtextlongtext |
Pertanyaan tentang CSV ke MariaDB
Tidak terjawab di sini? Tulis ke kami dari halaman kontak, dan seseorang akan membalas. Halaman kontak
Bagaimana cara mengonversi CSV ke MariaDB?
Letakkan file Anda di konverter di bagian atas halaman ini. Konverter menemukan baris judul, membaca setiap nilai, dan menulis skrip MariaDB, dengan mencantumkan setiap perbaikan yang dibuat. Unduh skripnya dan jalankan dengan the mariadb client.
Bagaimana jika CSV saya memakai titik koma atau tab?
Pemisah dideteksi: koma, titik koma, tab, atau garis tegak. Anda juga bisa mengaturnya di Opsi lainnya. Dengan titik koma, koma desimal seperti 1.234,50 dibaca sebagai angka.
Tipe MariaDB apa saja yang digunakan?
Nilai ya dan tidak menjadi tinyint(1), bilangan bulat int, desimal decimal(p,s), tanggal date, tanggal dengan waktu datetime(6), dan teks varchar(n). Ukuran diambil dari nilai terpanjang di setiap kolom.
Apakah nol di depan tetap ada di MariaDB?
Ya. Kode seperti 00412 tetap berupa teks, jadi MariaDB menyimpannya sebagai varchar(8) dan skrip menuliskannya sebagai '00412'.
Bisakah data dimuat ke MariaDB tanpa skrip?
Bisa, dengan IntoSQL Pro. Aplikasi desktop dan command line terhubung ke MariaDB dan memuat baris langsung, setelah membuat tabelnya terlebih dahulu.
Seberapa besar file CSV yang bisa dipakai?
Browser membaca CSV sambil dialirkan, jadi file berukuran beberapa gigabyte bisa diproses. Di laptop Apple M4, command line mengonversi CSV 174 MB berisi satu juta baris dalam waktu kurang dari satu detik.