sqlite使用rowid删除行不起作用

yqlxgs2m  于 2021-06-30  发布在  Java
关注(0)|答案(2)|浏览(448)

我创建了一个sql查询来删除给定rowid的行。当我运行查询时,没有错误,但是,行不会被删除。

String query = "DELETE FROM " + TABLE_NAME + " WHERE " + " rowid " + " = " + id;
db.execSQL(query);
sczxawaw

sczxawaw1#

解决方案:我使用真空功能重新生成正确的rowid。我之前删除了rowid不存在的行。

idfiyjo8

idfiyjo82#

试试这个:

String query = "DELETE FROM " + TABLE_NAME + " WHERE rowid " + " = '" + id + "'";
db.execSQL(query);

但我个人更喜欢这样:

if (db.delete(TABLE_NAME, rowid+ " = ?", new String[]{id}) != 0) {
    Log.i("row", "Has been deleted");
} else{
    Log.i("row", "Has not been deleted");
}

相关问题