2013-11-22 107 views
0

我正在創建一個使用數據庫的應用程序。每次運行乾淨的數據庫應用程序

我在完善數據庫,修復錯誤等。但我的助手的onCreate()方法只被調用一次。所以,在第一次測試之後,應用仍然使用舊的和錯誤的數據庫。

我可以實現onUpgrade()方法,但是這似乎有些奇怪我,因爲我實際上修正錯誤,我會找到很多。這是做到這一點的正確方法嗎?使用數據庫版本號?

有沒有更簡單的方法?

+1

在'的onCreate()',你就不能實施,將刪除數據庫每次(再從頭創建)的方法。那樣,無論什麼時候運行應用程序,在做其他事情之前它會清除所有當前數據? – WOUNDEDStevenJones

回答

2

當你的應用程序啓動時,您可以物理刪除數據庫:

File myDB = getDatabasePath("my_database.db"); 
myDB.delete(); 

你對數據庫的ContentProvider下一次調用隨後將從頭開始創建數據庫。

1

如果您正在測試/創建您的應用程序,那麼就刪除你的活動你在的onCreate)數據庫(方法:

this.deleteDatabase("your_database_name"); 

但對於未來您發佈的應用的版本,我建議學習和落實方法onUpgrade()

+0

我不知道這種方法的,所以+1,我相信答案是我的一樣好。 – NigelK

相關問題