使用事务

2016-04-25  本文已影响28人  TTTqiu
SQLiteDatabase db = dbHelper.getWritableDatabase();
db.beginTransaction(); // 开启事务
try {
    db.delete("Book", null, null);
    if (true) {
    // 在这里手动抛出一个异常,让事务失败
        throw new NullPointerException();
    }
    ContentValues values = new ContentValues();
    values.put("name", "Game of Thrones");
    values.put("author", "George Martin");
    values.put("pages", 720);
    values.put("price", 20.85);
    db.insert("Book", null, values);
    db.setTransactionSuccessful(); // 事务已经执行成功
} catch (Exception e) {
    e.printStackTrace();
} finally {
    db.endTransaction(); // 结束事务
}
1. 开启事务
db.beginTransaction(); // 开启事务
2. 操作完成后设置事务成功
db.setTransactionSuccessful();
3. 关闭事务
db.endTransaction();
上一篇下一篇

猜你喜欢

热点阅读