我为我的项目使用SQLitDatabase
,我通常会通过以下方式更新:
示例:
我想更新v2
。
ContentValues values = new ContentValues();
values.put(v1_COLUMN, v1); // Old value, gotten earlier
values.put(v2_COLUMN, v2_new); // New value, calculated earlier
values.put(v3_COLUMN, v3); // Old value, gotten earlier
db.update(TABLE_name, values, "_id=?", new String[]{id});
我使用这种方法,即使我只需要更新1列(请记住我的一些表有3列以上)。
如何仅更新实际需要更新的列?
答案 0 :(得分:4)
您的代码没问题,但不需要将旧值添加到值中。只是提出新的价值
ContentValues values = new ContentValues();
values.put(v2_COLUMN, v2_new); // New value, calculated
db.update(TABLE_name, values, "_id=?", new String[]{id});