我的应用有一个sqlite表,其中包含以下列:
列con_accid
的内容属于String
类型。表的主键是id
。我想删除特定con_accid
的数据。例如,我想删除con_accid
为"raja"
的所有商品的商品名称。我尝试了以下不同的查询,但两者都无效:
Cursor cursor = database.query(ContactsDB.TABLE_CONTACTS, allColumns,
ContactsDB.CONTACT_ACCID + "= ' " + comment +"'" , null, null, null, null);
if (cursor != null) {
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
Log.i(TAG, "delete");
ContactsInfo _comment = cursorToComment(cursor);
long id = _comment.getId();
database.delete(ContactsDB.TABLE_CONTACTS, ContactsDB.CONTACT_ID + "=" + id , null);
cursor.moveToNext();
}
}
和此:
String query = "SELECT * FROM todo WHERE con_accid='" + comment;
Cursor cursor = database.rawQuery(query,null);
答案 0 :(得分:1)
这应删除数据库中con_accid = raja
:
database.delete(TABLE_CONTACTS, CONTACT_ACCID + " = ?", new String[] {"raja"});
答案 1 :(得分:0)
使用.getWritableDatabase()创建检查“database”实例。您的查询应该没有任何问题。