Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android-无法删除数据库中的记录_Android_Sqlite - Fatal编程技术网

android-无法删除数据库中的记录

android-无法删除数据库中的记录,android,sqlite,Android,Sqlite,我有一个函数可以删除sqlite数据库中的记录。但这不是删除,有什么不对 public boolean deleteLoc(String id) { boolean deleteSuccessful = false; try { SQLiteDatabase db = this.getWritableDatabase(); deleteSuccessful = db.delete(TABLE_NAME, "id =" + id, null) &

我有一个函数可以删除sqlite数据库中的记录。但这不是删除,有什么不对

public boolean deleteLoc(String id) {
    boolean deleteSuccessful = false;

    try {

        SQLiteDatabase db = this.getWritableDatabase();
        deleteSuccessful = db.delete(TABLE_NAME, "id =" + id, null) > 0;

    } catch (NullPointerException e) {
        e.printStackTrace();
    } catch (Exception e) {
        e.printStackTrace();
    }

    return deleteSuccessful;

}

它总是返回false

如果
id
属于
string
类型,则应使用:

deleteSuccessful = db.delete(TABLE_NAME, "id ='" + id + "'", null) > 0;
编辑:


如果
id
类型为
Numeric
,则应将其转换为
long

long longId = Long.parseLong(id);
deleteSuccessful = db.delete(TABLE_NAME, "id =" + longId, null) > 0;
试试这个:

deleteSuccessful = db.delete(TABLE_NAME, "id ='" + id + "'", null) > 0;
否则,表中没有相应的记录……。是否检查了表中要删除的条目