Visualizzazione stampabile
-
Problemino con DB >>
Mado mi sembra di esser impedito ma certe cose non capisco proprio perchè non funziano hehe roftl
Ho creato 2 tabelle:
UNO(campo A, campo B, campo C);
DUE(campo D, campo B, campo E);
il campo B della tabella 2 è un references UNO(B) ON UPDATE CASCADE ON DELETE CASCADE
Nel mio programma inserisco elementi in UNO, per poi poterne quindi inserire in DUE...
....se però chiamo un
db.delete(table, "_id=" + itemId, null); sulla tabella UNO, la tabella DUE mi resta invariata quando la visualizzo in una lista.. (stesso per l'update)
Ho fatto i controlli seguenti(sembrano corretti):
- controllo dell'SQL per la creazione delle tabelle
- controllo che il cursor di DUE riaggiorni la lista
cursor.requery();
adapter.notifyDataSetChanged();
Ihih si pecco un po' sui DB visto che ho un esame in uni tra nemmeno un mese e quindi lo studio che ne ho alle spalle è per fare qualche cavolatina tipo agenda o simili....
Grazie,
Simone
PS:
se dovesse servire codice non ci son problemi a postare..
Volevo solo evitare di presentare qualcosa di più complesso di quello che è :D
EDIT:
Sql tabelle:
CREATE TABLE "TABELLA_MATERIE" ("_id" INTEGER PRIMARY KEY AUTOINCREMENT, "materia" TEXT UNIQUE NOT NULL)
CREATE TABLE "TABELLA_VOTI" ("_id" INTEGER PRIMARY KEY AUTOINCREMENT, "idMateria" TEXT REFERENCES TABELLA_MATERIE("materia") ON UPDATE CASCADE ON DELETE CASCADE, "mark" DOUBLE NOT NULL)
-
Magari non ti aiuta, ma... ti va di giocare un po' direttamente col database? ;)
Dalla directory tools di android:
Entri nella shell del telefono.
Poi:
codice:
cd data
cd data (si due volte)
cd nome del pacchetto (fisicamente il package)
cd databases
qui si trova il file .db che hai creato, puoi vederlo con un ls, ma dovrebbe avere il nome definito nell'helper.
Quindi
A questo punto benvenuto nel DB, prova a fare qui direttamente le select per vedere se i valori sono aggiornati o meno. Prova anche a lanciare una delete e controllare se almeno da qui funziona.
Non so se può aiutarti, ma visto che sta procedurina non è ancora saltata fuori qui nel forum, almeno ultimamente, mi andava di postarla per il bene comune :cool:
-
Quote:
Originariamente inviato da
Cymon
Magari non ti aiuta, ma... ti va di giocare un po' direttamente col database? ;)
Dalla directory tools di android:
Entri nella shell del telefono.
Poi:
codice:
cd data
cd data (si due volte)
cd nome del pacchetto (fisicamente il package)
cd databases
qui si trova il file .db che hai creato, puoi vederlo con un ls, ma dovrebbe avere il nome definito nell'helper.
Quindi
A questo punto benvenuto nel DB, prova a fare qui direttamente le select per vedere se i valori sono aggiornati o meno. Prova anche a lanciare una delete e controllare se almeno da qui funziona.
Non so se può aiutarti, ma visto che sta procedurina non è ancora saltata fuori qui nel forum, almeno ultimamente, mi andava di postarla per il bene comune :cool:
Hehe Cymon grazie :)
domani appena ho un po' di tempo lo provo al volo!
Io per acceder al db entravo attraverso il FileExplorer in eclpise ma ovviamente senza farci nulla di che :D
(però capisco il perchè del cd data per due volte hehe)
Cavolicchio spero di riuscire a risolver questo problema perchè mi influenza troppo l'andamento dell'app ovviamente :D
-
Quote:
Originariamente inviato da
dhalia
Hehe Cymon grazie :)
domani appena ho un po' di tempo lo provo al volo!
Io per acceder al db entravo attraverso il FileExplorer in eclpise ma ovviamente senza farci nulla di che :D
(però capisco il perchè del cd data per due volte hehe)
Cavolicchio spero di riuscire a risolver questo problema perchè mi influenza troppo l'andamento dell'app ovviamente :D
Posso dirti una cosa di nascosto? :p
Stiamo parlando di piccole app su un piccolo DB sqlite... le delete sulle tabelle figlie, in casi disperati, puoi anche gestirtele a mano...
Ma io non ti ho detto nulla ;)
-
Quote:
Originariamente inviato da
Cymon
Posso dirti una cosa di nascosto? :p
Stiamo parlando di piccole app su un piccolo DB sqlite... le delete sulle tabelle figlie, in casi disperati, puoi anche gestirtele a mano...
Ma io non ti ho detto nulla ;)
Hehe hai ragionissima :-D
Vorrei tenermela come ultima spiaggia questa possibilitá anche perché mi sembra brutto veder che quelle due cavolatine di db che so non funzionan ahah :-D
Tra poco mi piazzo al pc e faccio un paio di prove..
La parte comoda dell'usare on delete qualcosa on update qualcosa vorrei riuscir a farla bene e funzionante per risparmiarmi un po' di rogne hehe
in compenso dai piano piano un app la finisco..
Purtroppo in questo periodo ci son tante cose da fare ma non demordo ;-)
-
Quote:
Originariamente inviato da
Cymon
....
Ma io non ti ho detto nulla ;)
E dopo aver fatto qualche ora di "throws some madonnas!"
Simone si appresta a seguire il consiglio dei delete programmatici by consigliere sconosciuto ;)
Ora mancan delle statistiche e la mia app sarà finalmente pronta per il testing :D
Thanks a lot for the help!
-
Però così non va mica bene, non é deontologicamente corretto. Posteresti il codice del SQL helper? Tanto per vedere se il db va...
-
Quote:
Originariamente inviato da
Cymon
Però così non va mica bene, non é deontologicamente corretto. Posteresti il codice del SQL helper? Tanto per vedere se il db va...
Ceeerto :)
Ora mi cambio il video del fisso, accendo... se si vede qualcosa..
Posto subito il tutto rieditando hehe :D
-
Quote:
Originariamente inviato da
Cymon
Però così non va mica bene, non é deontologicamente corretto. Posteresti il codice del SQL helper? Tanto per vedere se il db va...
Ti riquoto per spammrti un pochino e in compenso ti auguro un buon natale hehe :D