Langsung ke konten

Konversi JSON ke MySQL

Letakkan file JSON Anda untuk mendapatkan skrip MySQL dengan pernyataan CREATE TABLE dan INSERT. Setiap kolom diberi tipe, dan setiap perbaikan dicantumkan beserta baris dan kolomnya.

File Anda
jsonpedidos_2024.jsonFile contoh, 771 B
Database Anda

4 baris dikonversi, 2 perbaikan, tidak ada yang ditolak

Tampilkan
Baris pertama pedidos_2024.json, dengan setiap perbaikan ditandai
Baris
2000481Peña Muñoz2024-02-03T10:15:00Z1234.5true
3000482José Ángel Ruiz2024-02-15T16:40:00Z99.9falseEntrega en la tarde
4000483Zoë Ortíz2024-02-29T09:05:00Z12true
5000484Ñuño Castañeda2024-03-11T13:30:00Z980.75síFactura con "RFC"
-- Written by IntoSQL for MySQL.

SET NAMES utf8mb4;
SET SESSION sql_mode = REPLACE(@@sql_mode, 'NO_BACKSLASH_ESCAPES', '');
START TRANSACTION;

CREATE TABLE pedidos_2024 (
    pedido varchar(8) NOT NULL,
    cliente varchar(16) NOT NULL,
    fecha datetime NOT NULL,
    total decimal(6,2) NOT NULL,
    pagado tinyint(1) NOT NULL,
    notas varchar(32)
) DEFAULT CHARSET=utf8mb4;

INSERT INTO pedidos_2024 (pedido, cliente, fecha, total, pagado, notas) VALUES
('000481', 'Peña Muñoz', '2024-02-03 10:15:00', 1234.5, TRUE, NULL),
('000482', 'José Ángel Ruiz', '2024-02-15 16:40:00', 99.9, FALSE, 'Entrega en la tarde'),
('000483', 'Zoë Ortíz', '2024-02-29 09:05:00', 12, TRUE, NULL),
('000484', 'Ñuño Castañeda', '2024-03-11 13:30:00', 980.75, TRUE, 'Factura con "RFC"');

COMMIT;

Perbaikan

  1. Nol di depan dipertahankan di "pedido": 000481 tetap 000481, disimpan sebagai teks.
  2. "pagado" berisi kata ya dan tidak (sí), disimpan sebagai boolean.

File Anda dikonversi di komputer ini dan tidak pernah diunggah.

Contoh lain:

Dari JSON ke MySQL, kolom demi kolom

Contoh di atas, pedidos_2024.json, seperti yang ditulis IntoSQL untuk MySQL: isi setiap kolom di file, tipe yang didapatnya, dan bagaimana nilai pertamanya ditulis di skrip.

Di fileNilai pertamaKolomTipe MySQLDi skrip
pedido000481pedidovarchar(8)'000481'
clientePeña Muñozclientevarchar(16)'Peña Muñoz'
fecha2024-02-03T10:15:00Zfechadatetime'2024-02-03 10:15:00'
total1234.5totaldecimal(6,2)1234.5
pagadotruepagadotinyint(1)TRUE
notas-notasvarchar(32)NULL

Muat skrip ke MySQL

Hasil unduhan adalah file .sql biasa. Jalankan dengan alat bawaan MySQL.

Dari terminal

mysql --default-character-set=utf8mb4 mydb < pedidos_2024.mysql.sql

Skrip mengatur utf8mb4 sendiri; flag ini membuat klien mengirimnya dengan cara yang sama, jadi aksen tiba utuh.

Dari alat database

Di MySQL Workbench, pilih File, Run SQL Script, lalu pilih file-nya.

Tanpa skripPro

IntoSQL Pro memuat file langsung ke MySQL dari aplikasi desktop atau command line, tanpa menulis skrip.

intosql load pedidos_2024.json --into mysql://user@localhost/mydb

Yang perlu diketahui tentang file JSON dan MySQL

Yang dibaca IntoSQL di file JSON

  • File dapat berupa array objek, objek yang menyimpan array tersebut di bawah kunci seperti data, atau satu objek per baris (NDJSON).
  • Setiap kunci menjadi kolom. Objek dan array di dalam nilai disimpan sebagai teks JSON.
  • Angka mempertahankan digit persisnya, dan tanggal ISO 8601 menjadi tanggal atau timestamp.

Yang perlu diketahui tentang MySQL

  • 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 MySQL tidak menyimpan zona waktu.

Cara setiap jenis nilai disimpan di MySQL

NilaiMySQL
Ya dan tidaktinyint(1)
Bilangan bulatint
Bilangan bulat besarbigint
Desimaldecimal(p,s)double
Bilangan floating-pointdouble
Tanggaldate
Jamtime(6)time
Tanggal dengan jamdatetime(6)datetime
Tanggal dengan jam dan selisih waktudatetime(6)datetime
Teksvarchar(n)textmediumtextlongtext

Pertanyaan tentang JSON ke MySQL

Tidak terjawab di sini? Tulis ke kami dari halaman kontak, dan seseorang akan membalas. Halaman kontak

Bagaimana cara mengonversi JSON ke MySQL?

Letakkan file Anda di konverter di bagian atas halaman ini. Konverter menemukan baris judul, membaca setiap nilai, dan menulis skrip MySQL, dengan mencantumkan setiap perbaikan yang dibuat. Unduh skripnya dan jalankan dengan the mysql client.

Seperti apa bentuk file JSON yang dibutuhkan?

Array objek, objek yang menyimpan array tersebut di bawah kunci seperti data, atau satu objek per baris (NDJSON). Setiap kunci menjadi kolom.

Tipe MySQL 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 MySQL?

Ya. Kode seperti 000481 tetap berupa teks, jadi MySQL menyimpannya sebagai varchar(8) dan skrip menuliskannya sebagai '000481'.

Bisakah data dimuat ke MySQL tanpa skrip?

Bisa, dengan IntoSQL Pro. Aplikasi desktop dan command line terhubung ke MySQL dan memuat baris langsung, setelah membuat tabelnya terlebih dahulu.

Seberapa besar file JSON yang bisa dipakai?

NDJSON, satu objek per baris, dibaca sambil dialirkan, jadi file berukuran beberapa gigabyte bisa diproses di browser. Dokumen JSON dibaca utuh, jadi batasnya adalah memori yang diberikan browser untuk halaman ini. Aplikasi desktop dan command line menerima file dengan ukuran berapa pun.