CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: gianpassa con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 10 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 34 Thanks ricevuti nell'ultimo mese

Pagina 1 di 2 12 ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 1 a 10 su 11
Discussione:

Database creato con Sqlliteman

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Androidiano


    Registrato dal
    Jul 2009
    Messaggi
    67

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Database creato con Sqlliteman

    Ciao ragazzi ho creato un databaase con sqlliteman e ho quindi il file database.db, adesso non so dove mettere questo file per riuscirlo a leggere in lettura e scrittura. Mi sapete dire dove posizionarlo? poi per aprilo posso usare i comandi standard?

  2.  
  3. #2
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da blindevil Visualizza il messaggio
    Ciao ragazzi ho creato un databaase con sqlliteman e ho quindi il file database.db, adesso non so dove mettere questo file per riuscirlo a leggere in lettura e scrittura. Mi sapete dire dove posizionarlo? poi per aprilo posso usare i comandi standard?
    E' meglio se ti studi l'OpenHelper e gestisci i db così.

    In pratica è una classe che crea il database e lo installa all'interno della tua app e poi ti permette di gestirlo. Rispetto a costruire un db a mano ha anche il vantaggio di gestire gli upgrade e quindi ripulire i flussi di rilascio.
    In pratica le query di creazione del DB le implementi in una derivazione di questa classe così che poi faccia tutto da solo.
    Se hai dubbi chiedi pure
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  4. #3
    Androidiano


    Registrato dal
    Jul 2009
    Messaggi
    67

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Ho creato il database sul modello descritto qui: SQLiteDatabaseAdapter.java - peer2tweet - Project Hosting on Google Code . Ora per andare a scrivere ho creato un metodo:
    codice:
    public void openDataBase(Context aContext,String databaseName) throws SQLException{
     
        	 String myPath = getDatabasePath(aContext,databaseName);
        	myDataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READWRITE);
     
        }
    che attivo così nel "main" della mia applicazione:
    codice:
    try {
     
     		myDbHelper.openDataBase();
    		
     
     	}catch(SQLException e){
     
     		throw e;
     
     	}
    Solo che appena avvio l'applicazione crea il database ma poi mi appare un messaggio di errore che mi dice di chiudere forzatamente l'applicazione. Come faccio per aprire il database creato e inserire i dati?

  5. #4
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Ma, guarda, lavorare con l'helper è molto più semplice di così (per fortuna )

    1- Estendi la classe SQLiteOpenHelper

    2- Sovrascrivi il metodo onCreate facendogli eseguire delle query di creazione DB



    Le CREATE_... sono delle query SQL sbattute brutalmente in stringhe.

    CREATE_TABLE_X = "CREATE TABLE X( ID... "

    3- A questo punto istanzi un oggetto di questa classe dove ne hai bisogno e estrai il db con
    SQLiteDatabase db = OGGETTO.getWritable(context)

    e poi lo manipoli come vuoi con metodi appositi



    Quindi come hai fatto la classe, seguendo il codice indicato, è giusto... per l'accesso segui il punto 3.
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  6. #5
    Androidiano


    Registrato dal
    Jul 2009
    Messaggi
    67

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Ciao ho fatto come hai detto tu. Ho fatto un oggett come descritto nel link precedente. Poi nel mio main ho istanziato l'oggetto e creato il database e fin qui tutto ok. Poi creo un oggetto SQLiteDatabase db = OGGETTO.getWriteble(context) ma va in errore..
    Quote Originariamente inviato da Cymon Visualizza il messaggio
    Ma, guarda, lavorare con l'helper è molto più semplice di così (per fortuna )

    1- Estendi la classe SQLiteOpenHelper

    2- Sovrascrivi il metodo onCreate facendogli eseguire delle query di creazione DB



    Le CREATE_... sono delle query SQL sbattute brutalmente in stringhe.

    CREATE_TABLE_X = "CREATE TABLE X( ID... "

    3- A questo punto istanzi un oggetto di questa classe dove ne hai bisogno e estrai il db con
    SQLiteDatabase db = OGGETTO.getWritable(context)

    e poi lo manipoli come vuoi con metodi appositi



    Quindi come hai fatto la classe, seguendo il codice indicato, è giusto... per l'accesso segui il punto 3.

  7. #6
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da blindevil Visualizza il messaggio
    Ciao ho fatto come hai detto tu. Ho fatto un oggett come descritto nel link precedente. Poi nel mio main ho istanziato l'oggetto e creato il database e fin qui tutto ok. Poi creo un oggetto SQLiteDatabase db = OGGETTO.getWriteble(context) ma va in errore..
    Oh scusa, errore mio... ah, rispondere di fretta.
    La getWritable va invocata senza parametri, come da documentazione
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  8. #7
    Androidiano


    Registrato dal
    Jul 2009
    Messaggi
    67

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Quote Originariamente inviato da Cymon Visualizza il messaggio
    Oh scusa, errore mio... ah, rispondere di fretta.
    La getWritable va invocata senza parametri, come da documentazione
    Scusa se ti rompo...ma mi va sempre in errore. Allora nel main creo un oggetto di tipo SQLiteDatabaseAdapter e faccio:
    codice:
    SQLiteDatabaseAdapter db;
    db.getInstance(getApplicationContext, "nomedatabase");
    SQLiteDatabase data = db.getWritableDatabase();
    e mi va in errore

  9. #8
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da blindevil Visualizza il messaggio
    Scusa se ti rompo...ma mi va sempre in errore. Allora nel main creo un oggetto di tipo SQLiteDatabaseAdapter e faccio:
    codice:
    SQLiteDatabaseAdapter db;
    db.getInstance(getApplicationContext, "nomedatabase");
    SQLiteDatabase data = db.getWritableDatabase();
    e mi va in errore
    Bhe... crei un oggetto SQLiteDatabaseAdapter con

    SQLiteDatabaseAdapter db = new SQLiteDatabaseAdapter(context);

    a questo punto non serve getInstance ma basta

    SQLiteDatabase data = db.getWritableDatabase();

    Sai, credo che stai facendo riferimento a un esempio un po' troppo complesso per iniziare. Penso sarebbe il caso che ti guardassi il codice, molto più snello, che è contenuto nell'esempio Notepad della documentazione base di android.
    IN particolare qui qui
    hai come si crea un Helper e poi come gli si accede... Attenzione che, essendo questa classe un ContentProvider contiene anche altre info, ma almeno nelle parti che interessano a te è estremamente asciutto.

    C'è parte del codice che hai linkato che non capisco e poi non sono molto d'accordo a chiamare un Helper Adapter . Vorrei capire cosa fanno poi se devono inserirlo in un Adapter vero
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  10. #9
    Androidiano


    Registrato dal
    Jul 2009
    Messaggi
    67

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Grazie mille tutto sistemato!

    Quote Originariamente inviato da Cymon Visualizza il messaggio
    Bhe... crei un oggetto SQLiteDatabaseAdapter con

    SQLiteDatabaseAdapter db = new SQLiteDatabaseAdapter(context);

    a questo punto non serve getInstance ma basta

    SQLiteDatabase data = db.getWritableDatabase();

    Sai, credo che stai facendo riferimento a un esempio un po' troppo complesso per iniziare. Penso sarebbe il caso che ti guardassi il codice, molto più snello, che è contenuto nell'esempio Notepad della documentazione base di android.
    IN particolare qui qui
    hai come si crea un Helper e poi come gli si accede... Attenzione che, essendo questa classe un ContentProvider contiene anche altre info, ma almeno nelle parti che interessano a te è estremamente asciutto.

    C'è parte del codice che hai linkato che non capisco e poi non sono molto d'accordo a chiamare un Helper Adapter . Vorrei capire cosa fanno poi se devono inserirlo in un Adapter vero

  11. #10
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da blindevil Visualizza il messaggio
    Grazie mille tutto sistemato!
    Bene
    Ma come hai risolto?
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

Pagina 1 di 2 12 ultimoultimo
Ultima pagina

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy