Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.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/6/eclipse/9.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 删除SQLite数据库中的条目_Android_Eclipse_Sqlite - Fatal编程技术网

Android 删除SQLite数据库中的条目

Android 删除SQLite数据库中的条目,android,eclipse,sqlite,Android,Eclipse,Sqlite,我是android编程新手,也是SQLIte新手。我正在从网站上编写以下代码。我正在为联系人编写数据库。如果我想删除ID为10的联系人,我应该写什么 public void deleteContact(Contact contact) { SQLiteDatabase db = this.getWritableDatabase(); db.delete(TABLE_CONTACTS, KEY_ID + " = ?", new String[] { Stri

我是android编程新手,也是SQLIte新手。我正在从网站上编写以下代码。我正在为联系人编写数据库。如果我想删除ID为10的联系人,我应该写什么

public void deleteContact(Contact contact) {
    SQLiteDatabase db = this.getWritableDatabase();
    db.delete(TABLE_CONTACTS, KEY_ID + " = ?",
            new String[] { String.valueOf(contact.getID()) });
    db.close();
}

若要匹配整数,不能传递字符串参数,请改用以下命令:

public void deleteContact(Contact contact) {
    SQLiteDatabase db = this.getWritableDatabase();
    db.delete(TABLE_CONTACTS, KEY_ID + "=" + contact.getID(), null);
    db.close();
}

如果要确保删除该行,请使用以下命令:

Cursor cursor = this.dB.query(Table_name,new String[] {"id","column2"}, "id LIKE '" + row_Id + "%'" ,  null , null , null , null );

if (cursor.moveToFirst()) {
System.out.print("Still Exists");
}
else
{
System.out.print("Deleted");
}

您可以检查
delete
return以记录删除的行数:

public void deleteContact(Contact contact) {
    int n;
    SQLiteDatabase db = this.getWritableDatabase();
    n=db.delete(TABLE_CONTACTS, KEY_ID + " = ?", new String[] {String.valueOf(contact.getID())});
    db.close();
    Log.v("deleteContact", "Deleted "+String.valueOf(n)+" row(s).");
}

上面代码中的问题是什么?您必须在希望使用“联系人”对象的位置将此函数称为所需的活动。否,我希望看到它在Logcat-1中被删除。这不会向操作代码添加任何内容!写一篇详细的评论为什么-1删除-1,因为你的答案可能会解决数据类型不匹配的问题。这没有多大意义。。。如果
delete
失败,将引发异常。