Converti sqlite in dbf

Convertitore online gratuito da SQLITE a DBF

Converti le tabelle SQLite selezionate in file DBF per software GIS e database legacy.

Converti SQLITE in DBF online - gratuito

Uploading…
I file selezionati superano il limite totale di 75 MB. Seleziona file meno numerosi o più piccoli.

Il tuo file viene elaborato istantaneamente e non viene archiviato sui nostri server.

Come funziona

  1. 1/3

    Carica il tuo file .sqlite

    Fai clic per selezionare il file che vuoi convertire oppure trascinalo semplicemente nell'area indicata.

  2. 2/3

    Avvia la conversione da .sqlite a .dbf

    Dopo il caricamento del file, fai clic su converti quando sei pronto.

  3. 3/3

    Scarica il file .dbf convertito

    Il risultato della conversione è pronto per il download.

Come convertire sqlite in dbf file

  • Database

I programmi GIS legacy, catastali, contabili e di database possono richiedere una tabella dBASE .dbf invece di un database SQLite. La conversione dei dati rende una tabella SQLite selezionata disponibile al software che non è in grado di leggere .sqlite o che si aspetta nomi, tipi e codifica dei campi DBF.

Che cos'è il formato SQLite

SQLite è un database relazionale autonomo memorizzato in un singolo file, che utilizza comunemente le estensioni .sqlite, .sqlite3 o .db. App mobili, browser, utilità desktop, dispositivi embedded e programmi GIS lo utilizzano perché non richiede un server di database separato.

Un file SQLite può contenere più tabelle, indici, viste, trigger e metadati. Non equivale a un singolo foglio di calcolo, quindi la conversione richiede la selezione di una tabella di origine; le tabelle correlate devono generalmente essere esportate come file DBF separati.

Che cos'è il formato DBF

DBF è il formato di tabella piatta associato a dBASE. I sistemi aziendali meno recenti, le applicazioni GIS, i programmi statistici e gli strumenti di database lo utilizzano per lo scambio di righe e colonne con uno schema fisso. Un dataset Shapefile include comunemente una tabella degli attributi DBF insieme ai relativi file .shp e .shx.

DBF è semplice e ampiamente supportato dal software legacy, ma non conserva indici SQLite, relazioni, viste, trigger, vincoli o il comportamento delle transazioni. I file compatibili con dBASE tradizionale generalmente limitano i nomi dei campi a 10 caratteri, utilizzano larghezze dei campi fisse, offrono una precisione numerica limitata e rappresentano le date senza informazioni su ora o fuso orario.

Come convertire i dati

Per una conversione occasionale senza installare software, usa il convertitore su 101convert.com: seleziona il file SQLite, scegli la tabella richiesta se la selezione della tabella è disponibile, avvia la conversione e scarica il file .dbf risultante. Verifica che l'output contenga la tabella desiderata; un database SQLite può contenere diverse tabelle. Per database riservati o molto grandi, utilizza invece un metodo locale.

Per conversioni ripetibili o un controllo preciso dello schema, Python può leggere direttamente SQLite e scrivere DBF:

  1. Installa Python e il pacchetto DBF:
    python -m pip install dbf
  2. Esamina il database e la tabella:
    sqlite3 source.sqlite
    .tables
    PRAGMA table_info(customers);
  3. Crea export_dbf.py, modificando secondo necessità il nome della tabella, il nome dell'output, i campi e i nomi delle colonne selezionate:
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()

Esegui lo script con python export_dbf.py. Le definizioni dei campi DBF e l'ordine della tupla devono corrispondere alle colonne SQLite selezionate. Le definizioni tipiche includono C(80) per il testo, N(12,2) per i valori decimali, N(10,0) per gli interi, L per i valori Boolean e D per le date. Converti le stringhe di data SQLite in oggetti Python date prima di inserirle in un campo D; usa invece un campo carattere quando è necessario mantenere visibili le informazioni su ora o fuso orario.

Un flusso di lavoro alternativo in due passaggi consiste nell'esportare una tabella con la shell a riga di comando SQLite, quindi importare il CSV in un software desktop compatibile con DBF:

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

CSV è solo un formato intermedio e non conserva i tipi o le relazioni SQLite. Il writer DBF richiede comunque nomi dei campi, larghezze, tipi e una code page appropriata.

Controlli di qualità e compatibilità

  • Associa i valori dinamici SQLite a uno schema DBF fisso prima della conversione. Controlla gli intervalli degli interi, la scala decimale, la rappresentazione dei Boolean, la lunghezza del testo e i formati delle date.
  • Mantieni i campi carattere abbastanza ampi per contenere il valore più lungo. I campi carattere DBF tradizionali sono comunemente limitati a 254 byte e un campo troppo stretto può troncare i dati o rifiutare un record.
  • Rinomina o associa le colonne più lunghe di 10 caratteri, le colonne che entrano in conflitto dopo l'abbreviazione e i nomi contenenti caratteri rifiutati dall'implementazione dBASE di destinazione.
  • Seleziona la code page corretta. cp1252 è adatta a molte applicazioni in lingue dell'Europa occidentale, ma il software GIS meno recente potrebbe richiedere una code page OEM. Il supporto UTF-8 varia tra i lettori DBF; verifica i caratteri accentati e non latini nel programma di destinazione.
  • Prevedi la possibile perdita delle distinzioni tra valori NULL, dei numeri ad alta precisione, del testo lungo, delle informazioni sul fuso orario, degli indici e della struttura relazionale. Conserva il file SQLite originale.
  • Confronta il numero di righe di origine e di output, testi e date rappresentativi e i totali numerici dopo aver aperto il DBF nell'applicazione ricevente.

Confronto formato: SQLITE vs DBF

Come i formati SQLITE e DBF si confrontano sulle proprietà più importanti per questa conversione.

Confronto dei formati SQLITE e DBF
Proprietà .SQLITE SQLite database .DBF dBASE Database File
Leggibile come testo semplice No No
Tipi di dati Tipizzato Tipizzato
Strutture nidificate Sì No
Formule No No
Più tabelle o fogli Sì No
Dimensione tipica del file Piccolo Piccolo
Standard aperto Sì Parzialmente aperto
Ideale per Scambio dati Scambio dati
Introdotto 2000 1983
Sviluppatore D. Richard Hipp / SQLite Consortium Ashton-Tate / dBASE, Inc. (format origin)
Tipo MIME application/vnd.sqlite3 application/x-dbf

Il database attualmente non contiene alcun convertitore di file sqlite.

Domande frequenti

Il convertitore da SQLITE a DBF è gratuito?

Sì, convertire SQLITE in DBF su 101convert.com è completamente gratuito. Non sono richiesti registrazione, e-mail o installazione. Se hai bisogno di un limite di dimensione del file più alto o vuoi convertire più file alla volta, consulta i nostri piani.

Quanto può essere grande il mio file SQLITE?

Puoi caricare file SQLITE fino a 50 MB e convertire fino a 20 file alla volta in un unico lotto.

Cosa succede ai file caricati?

I file vengono elaborati automaticamente ed eliminati dai nostri server pochi minuti dopo la conversione. Non visualizziamo né condividiamo mai i tuoi file.

Devo installare un software per convertire SQLITE in DBF?

No. La conversione da SQLITE a DBF avviene completamente online nel browser e funziona su Windows, Mac, Linux, Android e iPhone.

La conversione non è riuscita?

Nella maggior parte dei casi, la causa è un formato di file errato. Carica un file SQLITE valido per questa conversione da SQLITE a DBF. A volte il problema può dipendere anche da noi. Analizziamo gli errori di conversione ricorrenti e disattiviamo o ripariamo il convertitore se rileviamo un difetto.