Konversi db ke json

Konverter online gratis DB ke JSON

Konversikan file DB yang didukung ke JSON untuk APIs, scripts, dan berbagi data.

Konversi DB ke JSON online - gratis

Uploading…
File yang dipilih melebihi batas total 75 MB. Pilih file yang lebih sedikit atau lebih kecil.

File Anda diproses secara instan dan tidak pernah disimpan di server kami.

Bagaimana mengkonversi db ke json berkas

Web API, aplikasi JavaScript, atau alat berbagi data mungkin memerlukan record sebagai JSON, bukan file database. Konversi menghasilkan ekspor teks yang interoperabel, tetapi metode yang tepat bergantung pada database engine di balik ekstensi .db.

Apa itu format DB

DB bukan satu format tertentu. DB adalah ekstensi nama file umum yang digunakan oleh aplikasi SQLite, aplikasi mobile, game, browser, program desktop, dan sistem database proprietary. File database dapat berisi tabel, indeks, relationship, constraint, trigger, dan metadata yang dikelola oleh engine-nya.

SQLite biasanya menggunakan .db, .sqlite, atau .sqlite3. File-nya biasanya diawali signature SQLite format 3 dan dapat dibuka dengan DB Browser for SQLite, SQLite command-line shell, atau module bawaan sqlite3 milik Python. Database Microsoft Access biasanya menggunakan .mdb atau .accdb dan memerlukan Access atau driver yang kompatibel dengan Access. File DB proprietary mungkin hanya dapat dibuka dalam software yang membuatnya.

Identifikasi database engine sebelum memilih converter. Mengganti nama ekstensi tidak mengubah format dan tidak dapat membuat file yang tidak kompatibel menjadi terbaca.

Apa itu format JSON

JSON (JavaScript Object Notation) adalah format teks UTF-8 yang tersusun dari object, array, string, number, nilai Boolean, dan null. Web API, program JavaScript, configuration tool, script, dan banyak sistem pemrosesan data dapat membacanya tanpa database driver.

Tabel relasional biasanya diekspor sebagai array berisi object, dengan satu object untuk setiap row:

[{"id":1,"name":"Ada"},{"id":2,"name":"Linus"}]

JSON mudah dibaca dan dipertukarkan, tetapi bukan database. JSON tidak mempertahankan indeks, constraint, trigger, transaction, atau perilaku foreign key. JSON tidak otomatis lebih kecil daripada database sumber; gunakan compression seperti gzip jika ukuran transfer penting.

Cara mengonversi file DB ke JSON

Pertama, buat salinan file asli. Kemudian identifikasi engine-nya dan tentukan apakah output harus berisi satu tabel, beberapa tabel, atau record yang digabung dan dibuat nested. Mengekspor setiap tabel secara terpisah tidak mempertahankan relationship.

Untuk file yang didukung, opsi paling sederhana adalah menggunakan converter gratis di 101convert.com: upload file DB, pilih JSON sebagai format output jika tersedia, mulai konversi, lalu download file yang dihasilkan. Dukungan bergantung pada database engine, ukuran file, enkripsi, dan persyaratan password; jangan upload record rahasia kecuali kebijakan penanganan dan retensi layanan tersebut dapat diterima.

Untuk SQLite, DB Browser for SQLite menyediakan ekspor grafis. Buka file, periksa schema, pilih tabel yang diperlukan, lalu gunakan File → Export → Table(s) as JSON jika command tersebut tersedia dalam versi yang terinstal. Ekspor hanya tabel atau hasil query yang diperlukan, lalu buka output dengan JSON validator atau parser.

Python menyediakan filtering, penggantian nama, dan ekspor multi-tabel yang dapat diulang. Simpan ini sebagai export_db.py di sebelah input.db dan jalankan python export_db.py:

import json
import sqlite3

with sqlite3.connect("input.db") as db:
    db.row_factory = sqlite3.Row
    names = db.execute(
        "SELECT name FROM sqlite_master "
        "WHERE type = 'table' AND name NOT LIKE 'sqlite_%' ORDER BY name"
    ).fetchall()
    output = {}
    for (name,) in names:
        quoted = '"' + name.replace('"', '""') + '"'
        rows = db.execute(f"SELECT * FROM {quoted}")
        output[name] = [dict(row) for row in rows]

with open("output.json", "w", encoding="utf-8") as file:
    json.dump(output, file, ensure_ascii=False, indent=2)

File yang dihasilkan memiliki satu property untuk setiap tabel, seperti {"users":[...],"orders":[...]}. Untuk ekspor yang ditargetkan, ganti query SELECT * dengan query yang memilih kolom tertentu, memfilter row, atau menggabungkan tabel yang saling terkait. Jangan gunakan string yang tidak tepercaya untuk membangun SQL identifier tanpa quoting yang tepat.

SQLite command-line shell sesuai untuk satu query. Jalankan:

sqlite3 input.db
.mode json
.once output.json
SELECT id, name, email FROM users WHERE active = 1;
.once stdout
.quit

Hasil query ditulis sebagai array JSON. JSON mode pada shell memerlukan versi SQLite yang cukup baru; periksa shell yang terinstal jika command tersebut tidak tersedia.

Untuk Access atau engine lainnya, buka file dengan aplikasi native atau driver resminya, pilih tabel atau query, lalu ekspor hasilnya. Jika aplikasi menghasilkan CSV, bukan JSON, serialisasikan CSV dengan script sambil mempertahankan header, quoting, nilai null, dan encoding karakter. Untuk ekspor berulang, lakukan query ke database melalui driver resminya menggunakan Python, JavaScript, C#, atau command-line tool milik vendor.

Pemeriksaan kualitas dan kompatibilitas

  • Relationship: tabel yang terpisah tetap terpisah kecuali SQL join atau kode aplikasi membuat nested object. Foreign key dan constraint relasional tidak direproduksi oleh JSON biasa.
  • Type: tanggal, nilai desimal, UUID, type khusus database, dan null memerlukan representasi yang disepakati. Gunakan ISO 8601 untuk tanggal dan strategi desimal yang terdokumentasi. JSON tidak memiliki type bawaan untuk tanggal, desimal, atau binary.
  • Data binary: blob biasanya memerlukan Base64 atau encoding lain yang disepakati, sehingga meningkatkan ukuran. Beberapa converter mungkin menghilangkan atau menolak nilai blob.
  • Nilai khusus: JSON standar tidak dapat merepresentasikan NaN, infinity, atau data binary arbitrer secara langsung.
  • Ekspor besar: membuat satu object JSON di memory dapat menghabiskan memory. Lakukan stream pada row, ekspor tabel secara terpisah, atau gunakan newline-delimited JSON (NDJSON) jika program penerima mendukungnya.
  • Encoding: tulis JSON dalam UTF-8. Dalam Python, ensure_ascii=False menjaga karakter non-ASCII tetap terbaca, bukan meng-escape-nya.
  • Validasi: parse hasilnya dengan JSON parser dan bandingkan jumlah row, key field, null, tanggal, serta nilai numerik dengan sumbernya. File yang tampak terbaca mungkin tetap berisi data yang terpotong atau memiliki type yang salah.
  • Keamanan: hapus password, token, data pribadi, dan metadata internal sebelum membagikan ekspor. Database yang dienkripsi atau dilindungi password umumnya harus dibuka dan didekripsi terlebih dahulu oleh software native-nya.

Pertanyaan yang sering diajukan

Apakah konverter DB ke JSON gratis?

Ya, mengonversi DB ke JSON di 101convert.com sepenuhnya gratis. Tidak perlu registrasi, alamat email, atau instalasi.

Seberapa besar file DB yang bisa saya unggah?

Anda dapat mengunggah file DB hingga 50 MB dan mengonversi hingga 20 file sekaligus dalam satu batch.

Apa yang terjadi pada file yang saya unggah?

File diproses secara otomatis dan dihapus dari server kami beberapa menit setelah konversi. Kami tidak pernah melihat atau membagikan file Anda.

Apakah saya perlu menginstal perangkat lunak untuk mengonversi DB ke JSON?

Tidak. Konversi DB ke JSON berjalan sepenuhnya online di browser dan berfungsi di Windows, Mac, Linux, Android, dan iPhone.

Konversi gagal?

Dalam sebagian besar kasus, penyebabnya adalah format file yang tidak sesuai. Unggah file DB yang valid untuk konversi DB ke JSON ini. Terkadang masalah juga dapat terjadi di pihak kami. Kami menganalisis kegagalan konversi yang berulang dan menonaktifkan atau memperbaiki konverter jika menemukan kerusakan.