更新数据库注释返回1但没有更新

时间:2014-02-28 15:50:42

标签: android database sqlite sql-update android-context

我正在使用以下代码更新我的数据库:

ContentValues newValues = new ContentValues();
        newValues.put("tamam", true);
        SQLiteDatabase db = mContext.openOrCreateDatabase(DB_NAME,
            Context.MODE_WORLD_WRITEABLE, null);
    return db.update(channel, newValues, "id =" + id , null);

它返回1;

这是我的返回代码:

if(msoru.isSolved()!= true){
            TestAdapter mDbHelper = new TestAdapter(getActivity());
            mDbHelper.createDatabase();
            mDbHelper.open();
            int truefalse = mDbHelper.updatecheck(mNum2);
            boolean truefalse2 =  msoru.isSolved();

但如果我尝试读取新值,则会显示旧值。我认为没有变化

1 个答案:

答案 0 :(得分:1)

在数据库更新方法结束时,我应该使用此

更新我的arrayclass
myArrayclass.get(mContext).setsolved(id);
            db.close();

最后它看起来像这样:

public void updatecheck(int id) {


    ContentValues newValues = new ContentValues();
    int ok = 1;
    String sutun = "tamam";
    newValues.put(sutun, ok);
    SQLiteDatabase db = mContext.openOrCreateDatabase(DB_NAME,
            Context.MODE_PRIVATE, null);
    db.update(tablename, newValues, "id = ?",
            new String[] { String.valueOf(id) });
    myArrayclass.get(mContext).setsolved(id);
    db.close();

}