我正在使用以下代码更新我的数据库:
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();
但如果我尝试读取新值,则会显示旧值。我认为没有变化
答案 0 :(得分:1)
在数据库更新方法结束时,我应该使用此
更新我的arrayclassmyArrayclass.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();
}