android sqlite db-journal文件產生原因及說明 .

今天在android中將sqlite的數據庫文件生成在SD卡上的過程中,發現生成的.db文件的旁邊

生成了一個大小爲0的與數據庫文件同名的.db-journal文件,不明白此文件的用途,於是

google了sqlite的官方文檔,發現該文件的用途如下:

該文件是sqlite的一個臨時的日誌文件,主要用於sqlite事務回滾機制,在事務開始時產生,

在事務結束時刪除;當程序發生崩潰或者系統斷電時該文件將留在磁盤上,以便下次程序運行

時進行事務回滾。

但是我創建數據庫時將事務結束了,同時程序也沒有崩潰,爲什麼還是會在磁盤上產生

.db-journal文件呢?

深入研究,發現這是sqlite生成日誌文件的不同模式造成的,在android採用的這種模式下,

.db-journal文件是永久的留在磁盤上不會被自動清除的,如果沒有發生事務回滾那麼.db-journal

文件的大小爲0,這樣就避免了每次生成和刪除.db-journal文件的開銷。

到此,所有的疑惑解開了。

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