Android 删除SQLite数据库中的条目
我是android编程新手,也是SQLIte新手。我正在从网站上编写以下代码。我正在为联系人编写数据库。如果我想删除ID为10的联系人,我应该写什么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
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
失败,将引发异常。