我正在創建一個使用數據庫的應用程序。每次運行乾淨的數據庫應用程序
我在完善數據庫,修復錯誤等。但我的助手的onCreate()
方法只被調用一次。所以,在第一次測試之後,應用仍然使用舊的和錯誤的數據庫。
我可以實現onUpgrade()
方法,但是這似乎有些奇怪我,因爲我實際上修正錯誤,我會找到很多。這是做到這一點的正確方法嗎?使用數據庫版本號?
有沒有更簡單的方法?
我正在創建一個使用數據庫的應用程序。每次運行乾淨的數據庫應用程序
我在完善數據庫,修復錯誤等。但我的助手的onCreate()
方法只被調用一次。所以,在第一次測試之後,應用仍然使用舊的和錯誤的數據庫。
我可以實現onUpgrade()
方法,但是這似乎有些奇怪我,因爲我實際上修正錯誤,我會找到很多。這是做到這一點的正確方法嗎?使用數據庫版本號?
有沒有更簡單的方法?
當你的應用程序啓動時,您可以物理刪除數據庫:
File myDB = getDatabasePath("my_database.db");
myDB.delete();
你對數據庫的ContentProvider下一次調用隨後將從頭開始創建數據庫。
如果您正在測試/創建您的應用程序,那麼就刪除你的活動你在的onCreate)數據庫(方法:
this.deleteDatabase("your_database_name");
但對於未來您發佈的應用的版本,我建議學習和落實方法onUpgrade()。
我不知道這種方法的,所以+1,我相信答案是我的一樣好。 – NigelK
在'的onCreate()',你就不能實施,將刪除數據庫每次(再從頭創建)的方法。那樣,無論什麼時候運行應用程序,在做其他事情之前它會清除所有當前數據? – WOUNDEDStevenJones