Android 安卓sqlite更新最后插入行
我想更新最后插入的行,但出现错误: 08-20 12:08:23.091:E/AndroidRuntime(13598):android.database.sqlite.SQLiteException:接近“顺序”:语法错误 (代码1):,编译时:更新审阅集json=?在哪里点菜 日期说明限制1 我的代码:Android 安卓sqlite更新最后插入行,android,sqlite,Android,Sqlite,我想更新最后插入的行,但出现错误: 08-20 12:08:23.091:E/AndroidRuntime(13598):android.database.sqlite.SQLiteException:接近“顺序”:语法错误 (代码1):,编译时:更新审阅集json=?在哪里点菜 日期说明限制1 我的代码: public int updateDataJSON(Review review) { SQLiteDatabase db = this.getWritableDatabase();
public int updateDataJSON(Review review) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_JSON, review.getJson());
return db.update(TABLE_REVIEW, values, " ORDER BY date DESC LIMIT 1", null);
}
ORDER BY
仅在SELECT
查询中有效,不在UPDATE
s中有效
考虑以下几点:
insert()
返回的行id:
db.update(TABLE_REVIEW, values, "ROWID=?", new String[] { String.valueOf(lastInsertRowId)2 });
您必须在单独的步骤中读取最后日期:
db.update(..., "date = (SELECT max(date) FROM ReviewTable)", ...);
(如果有多行具有相同的date
值,这将更新所有行。)
db.update(..., "date = (SELECT max(date) FROM ReviewTable)", ...);