Konversi sqlite ke dbf

Konverter online gratis SQLITE ke DBF

Konversi tabel SQLite yang dipilih menjadi file DBF untuk perangkat lunak GIS dan database lama.

Konversi SQLITE ke DBF 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 dihapus segera setelah Anda mengunduhnya.

Cara kerjanya

  1. 1/3

    Unggah file .sqlite Anda

    Klik untuk memilih file yang ingin Anda konversi, atau cukup seret dan lepas file ke area yang ditentukan.

  2. 2/3

    Jalankan konversi .sqlite ke .dbf

    Setelah file berhasil diunggah, klik konversi saat Anda siap.

  3. 3/3

    Unduh file .dbf hasil konversi

    Hasil konversi siap untuk diunduh.

Bagaimana mengkonversi sqlite ke dbf berkas

Program GIS, kadaster, akuntansi, dan database lama mungkin memerlukan tabel dBASE .dbf alih-alih database SQLite. Mengonversi data membuat tabel SQLite yang dipilih tersedia bagi software yang tidak dapat membaca .sqlite atau mengharapkan nama field, tipe, dan encoding DBF.

Apa itu format SQLite

SQLite adalah database relasional mandiri yang disimpan dalam satu file, biasanya menggunakan ekstensi .sqlite, .sqlite3, atau .db. Aplikasi mobile, browser, utilitas desktop, perangkat embedded, dan program GIS menggunakannya karena tidak memerlukan database server terpisah.

File SQLite dapat berisi beberapa tabel, indeks, view, trigger, dan metadata. SQLite tidak setara dengan satu spreadsheet, sehingga konversi memerlukan pemilihan tabel sumber; tabel terkait biasanya harus diekspor sebagai file DBF terpisah.

Apa itu format DBF

DBF adalah format tabel datar yang terkait dengan dBASE. Sistem bisnis lama, aplikasi GIS, program statistik, dan database tools menggunakannya untuk bertukar baris dan kolom dengan schema tetap. Dataset Shapefile biasanya menyertakan tabel atribut DBF bersama file .shp dan .shx.

DBF sederhana dan didukung secara luas oleh software lama, tetapi tidak mempertahankan indeks SQLite, relationships, view, trigger, constraints, atau transaction behavior. File yang kompatibel dengan dBASE tradisional umumnya membatasi nama field hingga 10 karakter, menggunakan lebar field tetap, menyediakan presisi numerik terbatas, dan merepresentasikan tanggal tanpa informasi waktu atau timezone.

Cara mengonversi data

Untuk konversi satu kali tanpa menginstal software, gunakan converter di 101convert.com: pilih file SQLite, pilih tabel yang diperlukan jika pemilihan tabel tersedia, mulai konversi, lalu download .dbf yang dihasilkan. Pastikan output berisi tabel yang dimaksud; database SQLite mungkin berisi beberapa tabel. Gunakan metode lokal untuk database rahasia atau berukuran sangat besar.

Untuk konversi berulang atau kontrol schema yang presisi, Python dapat membaca SQLite secara langsung dan menulis DBF:

  1. Instal Python dan package DBF:
    python -m pip install dbf
  2. Periksa database dan tabel:
    sqlite3 source.sqlite
    .tables
    PRAGMA table_info(customers);
  3. Buat export_dbf.py, lalu ubah nama tabel, nama output, field, dan nama kolom yang dipilih sesuai kebutuhan:
import sqlite3
import dbf

source = "source.sqlite"
table_name = "customers"
output = "customers.dbf"

conn = sqlite3.connect(source)
conn.row_factory = sqlite3.Row
rows = conn.execute(f'SELECT * FROM "{table_name}"').fetchall()

fields = (
    "ID N(10,0); "
    "NAME C(80); "
    "EMAIL C(120); "
    "ACTIVE L; "
    "CREATED C(25)"
)

table = dbf.Table(output, fields, codepage="cp1252")
table.open(dbf.READ_WRITE)
try:
    for row in rows:
        table.append((
            row["id"],
            row["name"],
            row["email"],
            None if row["active"] is None else bool(row["active"]),
            row["created"]
        ))
finally:
    table.close()
    conn.close()

Jalankan script dengan python export_dbf.py. Definisi field DBF dan urutan tuple harus sesuai dengan kolom SQLite yang dipilih. Definisi yang umum mencakup C(80) untuk teks, N(12,2) untuk nilai desimal, N(10,0) untuk integer, L untuk nilai Boolean, dan D untuk tanggal. Konversikan string tanggal SQLite menjadi objek date Python sebelum memasukkannya ke field D; gunakan field karakter jika data waktu atau timezone harus tetap terlihat.

Workflow alternatif dua langkah adalah mengekspor tabel dengan shell command-line SQLite, lalu mengimpor CSV ke software desktop yang mendukung DBF:

sqlite3 source.sqlite
.headers on
.mode csv
.output customers.csv
SELECT * FROM customers;
.output stdout
.quit

CSV hanya merupakan format perantara dan tidak membawa tipe SQLite atau relationships. DBF writer tetap memerlukan nama field, lebar, tipe, dan code page yang sesuai.

Pemeriksaan kualitas dan kompatibilitas

  • Petakan nilai dinamis SQLite ke schema DBF tetap sebelum konversi. Periksa rentang integer, skala desimal, representasi Boolean, panjang teks, dan format tanggal.
  • Pastikan field karakter cukup lebar untuk nilai terpanjang. Field karakter DBF tradisional biasanya dibatasi hingga 254 byte, dan field yang terlalu sempit dapat memotong data atau menolak suatu record.
  • Ganti nama atau petakan kolom yang lebih panjang dari 10 karakter, kolom yang menjadi sama setelah dipersingkat, dan nama yang berisi karakter yang ditolak oleh implementasi dBASE target.
  • Pilih code page yang benar. cp1252 cocok untuk banyak aplikasi berbahasa Barat, tetapi software GIS lama mungkin memerlukan code page OEM. Dukungan UTF-8 berbeda-beda pada DBF reader; uji karakter beraksen dan non-Latin di program tujuan.
  • Antisipasi kemungkinan hilangnya perbedaan NULL, angka berpresisi tinggi, teks panjang, informasi timezone, indeks, dan struktur relasional. Simpan file SQLite asli.
  • Bandingkan jumlah row sumber dan output, teks serta tanggal yang representatif, dan total numerik setelah membuka DBF di aplikasi penerima.

SQLITE vs DBF: perbandingan format

Bagaimana format SQLITE dan DBF dibandingkan pada properti yang paling penting untuk konversi ini.

Perbandingan format file SQLITE dan DBF
Properti .SQLITE SQLite database .DBF dBASE Database File
Dapat dibaca teks biasa Tidak Tidak
Tipe data Bertipe Bertipe
Struktur bertingkat Ya Tidak
Rumus Tidak Tidak
Beberapa tabel atau sheet Ya Tidak
Ukuran file umum Kecil Kecil
Standar terbuka Ya Sebagian terbuka
Paling cocok untuk Pertukaran data Pertukaran data
Diperkenalkan 2000 1983
Pengembang D. Richard Hipp / SQLite Consortium Ashton-Tate / dBASE, Inc. (format origin)
Tipe MIME application/vnd.sqlite3 application/x-dbf

Basis data saat ini tidak berisi sqlite file converter.

Pertanyaan yang sering diajukan

Apakah konverter SQLITE ke DBF gratis?

Ya, mengonversi SQLITE ke DBF di 101convert.com sepenuhnya gratis. Tidak perlu registrasi, alamat email, atau instalasi. Jika Anda membutuhkan batas ukuran file yang lebih besar atau ingin mengonversi lebih banyak file sekaligus, lihat paket kami.

Seberapa besar file SQLITE yang bisa saya unggah?

Anda dapat mengunggah file SQLITE 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 SQLITE ke DBF?

Tidak. Konversi SQLITE ke DBF 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 SQLITE yang valid untuk konversi SQLITE ke DBF ini. Terkadang masalah juga dapat terjadi di pihak kami. Kami menganalisis kegagalan konversi yang berulang dan menonaktifkan atau memperbaiki konverter jika menemukan kerusakan.