FMDB使用SQLite事務Save Point

大學霸發表於2017-03-30
FMDB使用SQLite事務Save Point

在SQLite中,事務提供了批次處理,批次撤銷的功能。當批次操作中有一步無法完成操作,就會把執行過的語句都撤銷,恢復到撤銷前的狀態。但是由於SQLite不支援事務巢狀,所以使用者不能直接完成複雜的事務。不過,SQLite提供了儲存點Save Point機制。使用者可以在事務中新增儲存點,然後根據情況,回滾到指定的儲存點,並可以重新執行儲存點之後的程式碼。這樣,透過儲存點機制,可以變相實現事務巢狀。

為了滿足開發者需要,FMDB在FMDatabase類中提供了Save Point操作方法。
startSavePointWithName:建立儲存點。
rollbackToSavePointWithName:回滾到儲存點。
inSavePoint:執行儲存點後的程式碼。
releaseSavePointWithName:撤銷儲存點。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-2136338/,如需轉載,請註明出處,否則將追究法律責任。

相關文章