我正在使用一个相当简单的命令来尝试删除SQLite数据库中的行.但是,在成功运行命令后,行仍保留在DB中!
SQLiteDatabase dbinst = mydb.getWritableDatabase();
try
{
dbinst.beginTransaction();
int del = dbinst.delete("sms", "wassent = ? or waserror = ? or wasaborted = ?", new String[] {"1", "1", "1"} );
clog.debug("Rows deleted: " + del);
dbinst.setTransactionSuccessful();
}
catch(Exception e)
{
clog.error(e.toString(),e);
}
dbinst.close();
记录器显示“行已删除:3”,并且不会出现异常.但是,在之后立即执行查询时,行仍然存在?
我在这里做错了什么明显的事情?
最佳答案 您必须调用endTransaction来实际提交更改.更多信息可以在这里找到:
beginTransaction() documentation