android sqlite 事務

默認一條語句就是一個事務,如果想執行多條語句,可以使用事務。

 try{
      db.beginTransaction();
      db.execSQL(userTable.toString());
      db.execSQL(groupTable.toString());
      db.execSQL(messageTable.toString());
      db.setTransactionSuccessful();
    }catch(Exception e){
      e.printStackTrace();
    }finally{
      db.endTransaction();
    }

db.beginTransaction開啓事務。


db.setTransactionSuccessful設置事務處理成功,如果不設置的話,事務會自動回滾不會提交。


db.endTranscation結束事務,處理完成。本語句必須被調用。在finally塊中執行

程序執行到endTransaction() 方法時會檢查事務的標誌是否爲成功,如果程序執行到endTransaction()之前調用了setTransactionSuccessful() 方法設置事務的標誌爲成功,則所有從beginTransaction()開始的操作都會被提交,如果沒有調用setTransactionSuccessful() 方法則回滾事務。 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章