2017-10-10 46 views
0

我想關閉數據庫後立即複製Sqlite數據庫文件,所以這是安全的還是它的異步,因爲關閉功能不等待,直到一切都完成?即如果你使用操作系統文件操作拷貝一個數據庫文件,在數據庫關閉後不知道是否存在腐敗風險?如果我關閉一個SQLite數據庫,是否安全地立即複製數據庫文件?

我的猜測是沒有問題,數據庫的關閉確保現在在驅動器上覆制文件是安全的......但是我想確保,作爲一個損壞的副本數據庫將是一個非常頭痛的問題,並且可能是間歇性的錯誤並不總是發生。

到數據庫的千鈞一髮不會在一個單獨的線程在我的程序

回答

1

SQLite庫運行在你的過程中,不使用線程(除排序)。

因此,確保關閉後,通過此連接完成的任何操作都完成。

但是,這並不妨礙其他進程訪問數據庫文件。更好地使用online backup API來製作副本。

+0

一次只能有一個應用程序使用這個數據庫,所以它應該可以工作......但是如果決定將數據庫擴展到多個應用程序,備份API可能是未來最安全的賭注。感謝你的回答。 –