2014-09-23 110 views
1

我有一個Sqlite做我的工作,我想給用戶選擇能夠重新加載dB。因此,我想以編程方式清除dB並執行我在OnCreate方法中設置表在不重新啓動應用程序的情況下刪除/清除sqlite dB

我使用了context.deleteDatabases(dbName) 並初始化了該對象。

問題是它沒有生效,直到我重新啓動應用程序。有沒有不同的方式來做到這一點或解決方案?謝謝

+0

可能是因爲您沒有重新創建活動。 – SMR 2014-09-23 05:50:38

+0

首次創建數據庫時,將調用OnCreate方法。所以,即使你清理了數據庫,oncreate也不會再被調用。當你重新啓動應用程序時,你的Oncreate方法將被調用。所以,當你重新啓動 – 2014-09-23 06:06:45

回答

0

刪除後使用getWriteableDatabase()重新打開數據庫。這將導致數據庫被創建,並且您的onCreate回調將被再次調用。

+0

時,它已經反映出來了。刪除dB後,我創建另一個調用OnCreate的dB實例。我做了getwriteable,我添加了一些行。沒有出現,直到我殺了應用程序,並再次啓動 – Snake 2014-09-23 14:12:48

相關問題