尝试了一切。此更新不起作用。没有错误或什么 - 它只是没有更新表。
void SetDisable (Integer ID, boolean action){
Integer s;
if (action==true) s = 0; else s = 1;
db.rawQuery("UPDATE sms SET disabled="+s+" WHERE id="+ID+"",null);
}
这是我的表架构:
CREATE TABLE sms (id INTEGER PRIMARY KEY, fromhour INT, frommin INT, tohour INT, tomin INT, disabled INT);
sqlite>
答案 0 :(得分:11)
试试这个:
db.execSQL("UPDATE sms SET disabled="+s+" WHERE id="+ID+"");
返回表(游标)的SQL查询将使用rawQuery运行,而那些不返回表的SQL查询将使用execSQL运行
请参阅:
答案 1 :(得分:5)
使用SQLiteDatabase类提供的更新方法很容易。
void SetDisable (Integer ID, boolean action){
Integer s;
if (action==true) s = 0; else s = 1;
ContentValues cv=new ContentValues();
cv.put(disabled, s);
String where = "id=?";
String[] whereArgs = {Integer.toString(ID)};
db.update(sms, cv, where , whereArgs);
}
答案 2 :(得分:-1)
<强>更新强>
试试这个
ContentValues cv = new ContentValues();
cv.put("disabled", s);
db.update("table_name", cv, "id="+ID, null);
注意:我不知道是否仅仅需要在cv中更改您需要更改的内容,或者您必须放置所有属性。