数据库更新但不保存

时间:2013-07-02 09:27:27

标签: android android-sqlite

我有一个带有预制数据库的应用程序。我想更改此数据库中的条目并保存,但我遇到了一些麻烦。我有一个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中使用数据库的知识不完整,所以我可能会遗漏一些简单的东西。有谁知道出了什么问题?

1 个答案:

答案 0 :(得分:0)

请尝试使用此

ContentValues dataToInsert = new ContentValues();
                            dataToInsert.put(ALBUM_IS_COMPLETE, "true");
                            String where = "album_id=?";
                            String[] whereArgs = {albumid};
                            try
                                {
                                    openDataBase();
                                    myDataBase.update(DATABASE_ALBUM_TABLE, dataToInsert, where, whereArgs);
                                }
                            catch (Exception e)
                                {
                                }

希望这会对你有所帮助