有没有办法防止 sqlite db 崩溃?我有一个包含项目的列表视图。当您单击按钮时,所有项目都保存在数据库中。但是当列表中有很多产品并且您在保存按钮上单击非常快时,应用程序会冻结。当我之后检查我的数据库时,所有项目都会被保存多次。
有人知道答案吗?
代码:使用 isProdAlreadyFavorite 我检查数据库是否已经有一个带有 id 的条目...当您单击按钮时,他执行此功能..
public void addFavProducten(ArrayList<Product> producten) {
db = this.getWritableDatabase();
db.beginTransaction();
try {
for (Product product : producten) {
if (!isProdAlreadyFavorite(product.getProductid())) {
ContentValues cv = new ContentValues();
cv.put(Constanten.FAV_PROD_COLUMN_PRODUCTID,
product.getProductid());
db.insert(Constanten.TABLE_FAVPROD, null, cv);
}
}
db.setTransactionSuccessful();
} catch (Exception e) {
db.endTransaction();
} finally {
db.endTransaction();
db.close();
}
}