Autore Topic: Come importare tabelle mysql in sqlite cablandole definitivamente nella app?  (Letto 608 volte)

Offline guidocx84

  • Utente junior
  • **
  • Post: 68
  • Respect: 0
    • Mostra profilo
Ciao a tutti!
Avrei bisogno di un vostro consiglio su come gestire la seguente situazione: devo creare un database sqlite che sia una replica di un database remoto. Vi dico la procedura che sto seguendo.

Ho creato una classe DbHelper che estende SQLiteOpenHelper definendo il tipico costruttore per questa classe (come da tutorial) e facendo l'override dei metodi onCreate ed onUpgrade. Nel primo ho inserito le chiamate a execSQL() alle quali passo le stringhe in cui ho inserito le CREATE TABLE IF NOT EXISTS... ecc... delle tabelle che vorrei creare localmente su sqlite. Approccio standard credo.

In seguito ho creato la classe in cui definirò i metodi da chiamare dalle mie Activity ed i metodi che richiamerò da una classe apposita che utilizzo per sincronizzare i dati del database remoto che scarico sul dispositivo in formato xml. Tali dati andranno ad aggiornare o ad essere inseriti nel database del dispositivo.

La mia domanda è questa: ho 3 tipiche tabelle (regioni/province/comuni) che non ha senso riscaricare tutte le volte dal database remoto perché saranno sempre le stesse. Pertanto volevo cablarle direttamente nel database sqlite ed evitare di farle scaricare.
Secondo voi come posso gestire questa cosa? Dove devo mettere le insert per creare queste tabelle? Nella classe DbHelper  in cui le creo? O nella seconda? E poi... sono tantissime righe... io ho un dump del database mysql da cui posso estrapolare il codice per popolare queste tre tabelle. Ma ovviamente il codice non va bene per sqlite e soprattutto non è java.. come mi consigliate di comportartmi per importare completamente queste tre tabelle nella mia applicazione e mantenercele fisse?

Grazie mille a tutti!  ;-)

Post unito: 11 Maggio 2013, 10:33:17 CEST
Ciao ragazzi!
Cercando e ricercando ho trovato questo vecchio topic: Consigli x creare Database SQLite precompilato (con degli elementi gia inseriti) - Android Developers Italia che diciamo risponde alla mia domanda...
Nel mio database ho tre classiche tabelle regioni/province/città e quindi diciamo che più o meno rimarranno sempre le stesse.
Allora le metto nell'onCreate del database... solo che credo farò 3 classi separate per inserire i valori in un ContentValues perché altrimenti ho paura che il codice del DbHelper si appesantisca... che ne dite? Grazie!  ;-)

Post unito: 11 Maggio 2013, 13:29:49 CEST
Ok. Alla fine, per le tre tabelle "statiche", ho seguito questo approccio: http://android.devapp.it/t009-creare-ed-usare-database-sqlite-nelle-applicazioni-android

Spero possa essere utile anche ad altri.
A presto! Buon weekend!  ;-)
« Ultima modifica: 11 Maggio 2013, 13:29:49 CEST da guidocx84, Reason: Merged DoublePost »