如何通过execSQL()或rawQuery()SQLite获取受影响的更新行?

时间:2011-11-22 20:20:40

标签: java android sql sqlite sql-update

检索上一个UPDATE SQLite语句的受影响行数的命令行SQL语句是什么。 MySQL示例是ROW_COUNT()PRAGMA count_changes; SQLite Pragma语句已被弃用,因此我不打算使用它。

我不想使用SQLiteDatabase.update()来检索此信息,我想知道如何使用.rawQuery().execSQL()之外的原始查询来执行此操作。

由于

2 个答案:

答案 0 :(得分:3)

您可以使用SQLite changes()函数。

答案 1 :(得分:0)

我来晚了,但我想分享一下

SQLiteDatabase db = this.getWritableDatabase();
db.execSQL(yourSqlQuery);
Cursor res = db.rawQuery("select changes() 'affected_rows'", null);
res.moveToFirst();
int affected_rows = res.getInt(res.getColumnIndex("affected_rows"));