Converti csv in db

Convertitore online gratuito da CSV a DB

Converti i dati tabellari CSV in un file di database SQLite o di altro tipo con lo schema corretto.

Converti CSV in DB 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 ed eliminato non appena lo scarichi.

Come funziona

  1. 1/3

    Carica il tuo file .csv

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

  2. 2/3

    Avvia la conversione da .csv a .db

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

  3. 3/3

    Scarica il file .db convertito

    Il risultato della conversione è pronto per il download.

Come convertire csv in db file

Un'applicazione desktop può richiedere un file di database invece di un'esportazione in stile foglio di calcolo, oppure un programma locale può avere bisogno di query indicizzate e archiviazione strutturata. La conversione dei dati crea un database che può essere aperto dal motore di destinazione, ma il formato .db richiesto dipende da tale applicazione.

Che cos'è il formato CSV

CSV (comma-separated values) è testo semplice organizzato in record e campi. Le righe rappresentano generalmente i record, mentre virgole, punti e virgola o tabulazioni separano i campi; i valori tra virgolette possono contenere separatori, virgolette o interruzioni di riga.

Excel, LibreOffice Calc, sistemi di contabilità, gestori di contatti, strumenti di esportazione di database e script creano comunemente file CSV. CSV è utile per lo scambio di dati tabellari perché molti programmi possono leggerlo, ma non memorizza relazioni tra tabelle, indici, vincoli, autorizzazioni, formule, query, né tipi di colonna affidabili.

Che cos'è un file .db

.db è un'estensione di file, non un formato di database universale. Spesso identifica un database SQLite, ma anche Microsoft Access, dBase, Berkeley DB e applicazioni proprietarie utilizzano file di database con strutture interne diverse. Confermare il motore di database richiesto dal programma di destinazione prima della conversione.

Un database SQLite memorizza tabelle, indici, vincoli, viste e metadati dello schema in un unico file portatile. Le query SQL, le transazioni, le chiavi primarie e gli indici lo rendono più adatto di CSV per ricerche ripetute e per l'archiviazione delle applicazioni. SQLite utilizza tipi di colonna dichiarati e affinità dei tipi; non può dedurre correttamente i tipi o le relazioni mancanti nei dati di origine.

Metodi di conversione

Per un file .db compatibile con SQLite, il programma da riga di comando SQLite fornisce un'importazione diretta:

  1. Eseguire il backup del CSV e identificare il delimitatore, la codifica, il carattere per le virgolette e la riga di intestazione.
  2. Aprire un terminale nella cartella contenente il CSV.
  3. Eseguire sqlite3 output.db. SQLite crea il file se non esiste e lo apre se esiste già.
  4. Creare una tabella le cui colonne corrispondano al CSV, quindi importare i record.
CREATE TABLE customers (
  id INTEGER PRIMARY KEY,
  name TEXT NOT NULL,
  email TEXT,
  joined_at TEXT
);
.mode csv
.import --skip 1 customers.csv customers
CREATE INDEX customers_email_idx ON customers(email);
.quit

Utilizzare --skip 1 solo quando la prima riga contiene le intestazioni. Il numero e l'ordine dei campi importati devono corrispondere alla definizione della tabella. Per un file delimitato da punti e virgola, impostare .separator ";" prima di .import; configurare il delimitatore di tabulazione corrispondente per i dati separati da tabulazioni. Nelle versioni precedenti del programma da riga di comando SQLite che non supportano --skip, rimuovere prima la riga di intestazione oppure importare in una tabella di staging ed eliminare il record di intestazione.

Per un flusso di lavoro grafico, DB Browser for SQLite può importare un CSV tramite File → Import → Table from CSV file. Selezionare il delimitatore, il carattere per le virgolette, la codifica e l'opzione relativa alla riga di intestazione, controllare i tipi di colonna rilevati, quindi salvare il database. Le etichette esatte dei menu possono variare in base alla versione.

Python è preferibile quando l'origine richiede pulizia, convalida, conversione dei tipi, gestione dei duplicati o regole personalizzate per i valori null:

import csv
import sqlite3

with sqlite3.connect("output.db") as db:
    db.execute("CREATE TABLE customers (id INTEGER, name TEXT, email TEXT)")
    with open("customers.csv", newline="", encoding="utf-8-sig") as file:
        rows = csv.DictReader(file)
        db.executemany(
            "INSERT INTO customers (id, name, email) VALUES (?, ?, ?)",
            ((int(row["id"]), row["name"], row["email"]) for row in rows)
        )

Per un'opzione che non richiede installazione, utilizzare il convertitore da CSV a DB su 101convert.com e selezionare il tipo di database supportato dal programma di destinazione. Non caricare dati riservati a meno che le attuali condizioni sulla privacy e i requisiti di gestione del servizio non siano accettabili.

Se la destinazione è Microsoft Access, dBase o un altro database non SQLite, utilizzare la funzione di importazione CSV del prodotto oppure un convertitore che supporti esplicitamente il relativo formato. Rinominare un file SQLite con un'altra estensione non lo converte.

Controlli di qualità e compatibilità

  • Confermare il motore: un file .db SQLite non sarà necessariamente aperto da software che si aspetta Access, dBase, Berkeley DB o un database proprietario.
  • Preservare la codifica: UTF-8 è la scelta più sicura per l'interoperabilità. Codifiche ANSI o legacy rilevate in modo errato possono danneggiare i caratteri accentati e gli alfabeti non latini.
  • Definire deliberatamente i tipi: CSV non dispone di tipi nativi per date, valori booleani, interi o decimali. Memorizzare i codici postali, i numeri di conto e altri identificatori come TEXT quando gli zeri iniziali sono importanti.
  • Analizzare correttamente il CSV: virgole all'interno di indirizzi tra virgolette, interruzioni di riga incorporate e virgolette con caratteri di escape richiedono un importatore che riconosca il CSV, non una semplice suddivisione delle stringhe.
  • Controllare i valori: confrontare il numero di righe nell'origine e nella destinazione, esaminare i campi null e vuoti, verificare le date e la precisione decimale ed eseguire SELECT COUNT(*) FROM customers;.
  • Progettare separatamente le relazioni: dati ripetuti relativi a clienti, prodotti o categorie possono richiedere la normalizzazione in diverse tabelle con chiavi primarie ed esterne; una conversione di file non può dedurre in modo affidabile tale schema.
  • Salvare esplicitamente il database: eseguire il commit della transazione, chiudere correttamente il database e testare il file risultante con la stessa applicazione che lo utilizzerà.

Domande frequenti

Il convertitore da CSV a DB è gratuito?

Sì, convertire CSV in DB 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 CSV?

Puoi caricare file CSV 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 CSV in DB?

No. La conversione da CSV a DB 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 CSV valido per questa conversione da CSV a DB. 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.