Autore Topic: Piccolo dubbio su base di dati  (Letto 537 volte)

Offline bistick

  • Nuovo arrivato
  • *
  • Post: 8
  • Lorenzo Denami
  • Respect: 0
    • lorenzodenami
    • bistick
    • Mostra profilo
    • Lorenzo Denami
  • Dispositivo Android:
    X10 mini pro
  • Sistema operativo:
    Windows Seven X64
Piccolo dubbio su base di dati
« il: 24 Settembre 2010, 17:20:40 CEST »
0
Vorrei creare un'applicazione semplice che prevede l'uso di un db all'interno del quale salvare circa 5000 records con un paio di attributi. Il db serve per la sola lettura dei dati e non cambia se non per mano dello sviluppatore (in caso di aggiornamenti, per lo più del db). Ecco le domande:

1) come faccio a preconfezionare il DB in modo da includerlo poi nel apk finale? (non voglio caricare i dati da un csv attraverso l'app stessa)

2) aggiornando l'applicazione, il DB può essere completamente sostituito (sovrascritto) come del resto l'intera applicazione? (forse questa domanda è scontata)
L'informatica non riguarda i computer più di quanto l'astronomia riguardi i telescopi.

Edsger Dijkstra

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Piccolo dubbio su base di dati
« Risposta #1 il: 24 Settembre 2010, 17:43:41 CEST »
0
Ciao bistick, il db può essere facilmente caricato senza bisogno di ricorrere a file csv. Ti consiglio di dare uno sguardo ai sorgenti di questa applicazione per capire come fare (AlmanacSQLiteDatabaseAdapter.java):
[ALFA]: Almanac 0.0.17 - Android Developers Italia

L'aggiornamento del DB non è un problema, è sufficiente incrementare il numero di version del DB e gestire le opportune modifiche nell'onUpgrade.
Ad esempio così:
Codice (Java): [Seleziona]
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("DROP TABLE IF EXISTS "+TABLE);
        onCreate(db);
}
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline bistick

  • Nuovo arrivato
  • *
  • Post: 8
  • Lorenzo Denami
  • Respect: 0
    • lorenzodenami
    • bistick
    • Mostra profilo
    • Lorenzo Denami
  • Dispositivo Android:
    X10 mini pro
  • Sistema operativo:
    Windows Seven X64
Re:Piccolo dubbio su base di dati
« Risposta #2 il: 24 Settembre 2010, 17:48:10 CEST »
0
bene per l'upgrade... ma non riesco a scaricare i file sorgenti di almanac...
L'informatica non riguarda i computer più di quanto l'astronomia riguardi i telescopi.

Edsger Dijkstra

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Piccolo dubbio su base di dati
« Risposta #3 il: 24 Settembre 2010, 17:49:50 CEST »
0
In che senso non riesci a scaricare i sorgenti?

Hai installato il plugin di mercurial in eclipse? Prova a dare uno sguardo a questo tutorial: [facile] Come installare il plugin per Mercurial su Eclipse (consigliato!) - Android Developers Italia
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline bistick

  • Nuovo arrivato
  • *
  • Post: 8
  • Lorenzo Denami
  • Respect: 0
    • lorenzodenami
    • bistick
    • Mostra profilo
    • Lorenzo Denami
  • Dispositivo Android:
    X10 mini pro
  • Sistema operativo:
    Windows Seven X64
Re:Piccolo dubbio su base di dati
« Risposta #4 il: 24 Settembre 2010, 18:03:00 CEST »
0
ah ho capito... ora installo il plugin...

intanto volevo dire che ho già lavorato con SqlLite su applicazioni desktop, e mi ricordo che alla fine il db era costituito da uno o più files con estensione nota. Credo che la stessa cosa succeda quì, ma forse il db in questo caso non si può inglobare nell'apk ma verrà dopo l'installazione creato in un'apposita cartella del fs del dispositivo. Quindi il gioco sta nel programmare bene le fasi di creazione e update del db... Dico bene?
L'informatica non riguarda i computer più di quanto l'astronomia riguardi i telescopi.

Edsger Dijkstra

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Piccolo dubbio su base di dati
« Risposta #5 il: 24 Settembre 2010, 18:07:07 CEST »
0
Sì dici bene, viene salvato in una sottodirectory di data contenente tutto quello che riguarda la tua applicazione.

In ogni caso rinnovo l'invito a prendere visione di questi sorgenti, contengono la risposta a tutte le tue domande, compresa quest'ultima:
AlmanacSQLiteDatabaseAdapter.java
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline bistick

  • Nuovo arrivato
  • *
  • Post: 8
  • Lorenzo Denami
  • Respect: 0
    • lorenzodenami
    • bistick
    • Mostra profilo
    • Lorenzo Denami
  • Dispositivo Android:
    X10 mini pro
  • Sistema operativo:
    Windows Seven X64
Re:Piccolo dubbio su base di dati
« Risposta #6 il: 24 Settembre 2010, 18:19:26 CEST »
0
Grazie, non riuscivo ad arrivare alla pagina con il codice sorgente. Comunque ho installato il plugin per Mercurial sperando che sia la volta buona che prendo l'abitudine di usare tool per il versioning dei progetti.

Per quanto riguarda il post aspetto qualche giorno prima di segnarlo come risolto, perchè sono sicuro che qualche cosa mi sfuggirà...
L'informatica non riguarda i computer più di quanto l'astronomia riguardi i telescopi.

Edsger Dijkstra

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Piccolo dubbio su base di dati
« Risposta #7 il: 24 Settembre 2010, 18:24:50 CEST »
0
Se vuoi puoi marcarlo ora come risolto per poi riaprirlo, nel caso serva, tra qualche giorno ;)
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !