Come convertire un database MySQL in SQLite

Lavorando alla mia ultima applicazione (che fra poco vedrete in AppStore) ho avuto la necessità di convertire un database MySQL in SQLite, che è l’unico utilizzabile nelle applicazioni per iOS.

Sono partito, ovviamente, da un file di dump del database in questione. MySQL contiene dei comandi e delle istruzioni che non sono riconosciute da SQLite, quindi potrebbero provocare errori quando cercate di creare il nuovo database. Per effettuare al meglio tale migrazione ho trovato in rete un semplice script, che vi aiuterà in questo passaggio. Eccovelo di seguito:

Prendete questo codice i inseritelo in un file di script (potete scaricarlo già pronto da qui); fatto ciò aprite il terminale, e utilizzate lo script sul file che vi interessa. Eccovi un esempio:

dove converter.sh è il file dello script, mentre db.sql è il database che vogliamo convertire. Nello stesso percorso troverete poi un file con estensione “.db”, quello sarà il vostro database in SQLite!

La conversione non sempre è senza errori, ma vi basterà qualche piccolo “ritocco” manuale per sistemare il tutto 😉

Fonte: JBipNet

Andrea Busi | @bubidevs

Laureato in Ingegneria Informatica, ho fondato nel 2008 questo piccolo blog, in cui racconto le mie esperienze e i miei pensieri sul mondo dell'informatica. Nella vita mi occupo di sviluppo software, e nel tempo libero continuo a coltivare la mia passione per il mondo iOS.

ommenti a “Come convertire un database MySQL in SQLite

  1. GioB ha detto:

    non se sono in tema ma lo scrivo qua

    come faccio a leggere il dump di un database sqlite?

  2. Andrea Busi ha detto:

    @GioB: se lo devi modificare “manualmente” va bene un qualsiasi editor di testo, io utilizzo Espresso per Mac.

    se invece devi creare il database partendo dal file di dump ti consiglio SQLite Manager, un’estensione per Firefox, che secondo me è la soluzione migliore per gestire db SQLite..

  3. Raffpio ha detto:

    Ciao caro Andrea, spero abbia passato buone feste!
    Volevo chiederti: come faccio ad esportare db da sqlite a mysql?
    Grazie per la guida 🙂
    Ciao e buona giornata!
    Raffaele Pio

  4. Andrea Busi ha detto:

    @Raffpio: su questo non ho proprio idea, però forse se esporti il db in SQL standard dovresti riuscire ad utilizzarlo anche con MySQL 😉

  5. Amalia ha detto:

    ciao,
    scusa in anticipo l’ignoranza. Sono sempre stata un utente mac. Sonopassata da poco ad ubuntu, con cui mi trovo straordinariamente bene. Ho costruito un database in sqlite, facendo parecchie tabelle. Ora ho bisogno di collegare le tabelle fra di loro, attraverso la chiave primaria ma non ci riesco. Esiste un metodo semplice e chiaro per farlo?? Premetto che sono costretta ad utilizzare sqlite perchè è l’unico che dialoga bene con qgis. Grazie mille per l’eventuale risposta.
    Amalia

  6. Andrea Busi ha detto:

    @Amalia: ciao, dipende da cosa utilizzi per creare la tabella. Se utilizzi SQL puro (quindi senza ricorrere a programmi) dovrai semplicemente inserire la clausola “Foreign key” nell’attributo di un elemento collegato alla chiave primaria..

  7. nat ha detto:

    Ma sei un mito … provo subito 🙂

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*