SQLite
 sql >> Database >  >> RDS >> SQLite

Impossibile aggiornare la riga in Sqlite in Android ma non genera alcun errore

1). Controlla il tuo Logcat che non hai errori.

2). Abilita la registrazione per vedere tutte le istruzioni SQL, che stai facendo:

https://gist.github.com/davetrux/9741432

adb shell setprop log.tag.SQLiteLog V
adb shell setprop log.tag.SQLiteStatements V
adb shell stop
adb shell start

Oppure leggi questo:https://stackoverflow.com/a/19152852/1796309
O questo:https://stackoverflow.com/a/6057886/1796309

Ad ogni modo, devi verificare che stai eseguendo una query SQL corretta.

3). Se la tua query va bene, ma non riesci ancora ad aggiornare la tua riga, devi farlo:

3.1) Vai a <android-sdk-dir>/platform-tools

3.2). Assicurati che la tua build attuale sia Debug (non Release o riceverai il messaggio adbd cannot run as root in production builds ).

Voglio dire, dovresti eseguire la tua app tramite questo pulsante:

Ed esegui i comandi successivi:

./adb root
./adb shell
run-as com.mycompany.app    //<----------- your applicationId from build.gradle
ls -l
drwxrwx--x u0_a88   u0_a88            2016-01-25 15:44 cache
drwx------ u0_a88   u0_a88            2016-01-25 15:25 code_cache
drwxrwx--x u0_a88   u0_a88            2016-01-25 15:44 databases    //<----
drwxrwx--x u0_a88   u0_a88            2016-01-25 15:26 files

cd databases/
ls -l
-rw-rw---- u0_a88   u0_a88     172032 2016-01-25 15:45 <your-app>.db
-rw------- u0_a88   u0_a88      33344 2016-01-25 15:45 <your-app>.db-journal

chmod 777 -R <your-app>.db
exit
exit
./adb pull /data/data/<your applicationId from build.gradle>/databases/<your-app>.db ~/projects/

Dopo questo, avrai una copia del tuo database SQLite in ~/projects/ directory.

Aprilo usando, ad esempio questo:http://sqlitebrowser.org/

Prova a eseguire la query di aggiornamento, che puoi ottenere da Logcat .
Vedrai tutti gli errori SQL e sarai in grado di risolverli molto velocemente.

Buona fortuna!