SQLite删除所有不相等的行“stage!=? “在Android中

问题描述 投票:-4回答:3

我试图在我的应用程序上删除SQLite数据库中的行。 此代码为“Where field value equal”

mydatabase.delete("potentials", "stage=?", new String[]{"Ready for Install"});

但我需要“场地价值不平等”

mydatabase.delete("potentials", "stage!=?", new String[]{"Ready for Install"});

 mydatabase.delete("potentials", "stage<>?", new String[]{"Ready for Install"});

我尝试了这段代码,但它不起作用

android sqlite android-sqlite
3个回答
1
投票

试试这个功能:

public void DeletePostbyId(int id) {
        SQLiteDatabase db = this.getWritableDatabase();
        db.execSQL("DELETE FROM " + TABLE_CHECK + " WHERE " + ID + "!='" + id + "'");
        db.close();

        //db.delete(TABLE_CAT, CAT_ID + "= ?", new String[]{String.valueOf(catid)});
    }

3
投票

你应该在比较器中使用不等运算符:“stage!=?”或“阶段<>?”。

mydatabase.delete(“potential”,“stage <>?”,new String [] {“Ready for Install”});


0
投票

您的查询没有任何问题。它可能在这里失败的原因是字母案例......试试这个

mydatabase.delete("potentials", "upper(stage) != ?", new String[]{"READY FOR INSTALL"});

另请注意upper(stage)附近的间距

© www.soinside.com 2019 - 2024. All rights reserved.