我的sql delete命令使我的db.insert导致崩溃

时间:2018-07-11 07:40:45

标签: android sql

public void(Budget budget){
    SQLiteDatabase db = this.getReadableDatabase();    
    db.delete(Budget.table_name, Budget.collum_id,  " = ?",  new String[]{String.valueOf(budget.getId())}
}

3 个答案:

答案 0 :(得分:1)

您提供了错误的参数来删除方法,正确的语法如下

delete(String table, String whereClause, String[] whereArgs)

如果您对此语法感到困惑,只需使用

db.execSQL(DELETE FROM table WHERE condition1 AND condition2.....);

答案 1 :(得分:0)

以这种方式更改代码,以获取要读取的数据。

public void(Budget budget){
    SQLiteDatabase db = this.getWritableDatabase();    
    db.delete(Budget.table_name, Budget.collum_id,  " = ?",  new String[]{String.valueOf(budget.getId())
    db.close();}
}

答案 2 :(得分:0)

更改为:

SQLiteDatabase db = this.getWriteableDatabase();
db.delete(Budget.table_name, Budget.collum_id + " = ?",  new String[]{String.valueOf(budget.getId())}); 

您要删除未从数据库读取的内容
还要更改为

Budget.collum_id + " = ?"