事前に作成されたデータベースを備えたアプリがあります。このデータベースのエントリを変更して保存したいのですが、問題が発生しています。内部に次のメソッドを持つ DatabaseHelper があります。
public void updateStats(int rowId, int correct, int attempts) {
//Method for updating the stats after a question is answered
SQLiteDatabase db = this.getWritableDatabase();
ContentValues args = new ContentValues();
args.put("CORRECT", correct);
args.put("ATTEMPTS", attempts);
db.update("CHARACTERS", args, "_id=" + rowId, null);
Cursor c = db.query("CHARACTERS", null, null, null, null, null, null);
c.moveToPosition(rowId-1);
Log.d("database", "test - " + String.valueOf(c.getInt(0)));
db.close();
}
ログに変更が加えられたことをクエリが示しているため、更新は正常に実行されているようです。しかし、アクティビティを終了すると、アプリは元のデータベースに戻っています。
Android でのデータベースの使用に関する私の知識は不完全なので、単純なものが欠けている可能性があります。誰が何が問題なのか知っていますか?