我想在開始時爲我的應用程序插入所需的數據,我將使用這些數據。我想插入一次,並且不得有重複。因此,在「onCreate」中,我是這樣做的:如果表的行數(如學生等)爲0,我插入學生。我不認爲這是做這件事的最好方法。所以我想知道是否有更好的方法。Android數據庫插入開始
回答
如果您希望在安裝時填充數據庫並且永遠不會有其他任何時間,那麼您唯一合理的選擇是將預填充的數據庫與您的APK一起打包爲內置資源。這具有簡化您的應用程序的優勢。或者,如果您爲數據庫實施SQLiteOpenHelper
,則只會在第一次運行應用程序時或在某人清除所有應用程序的數據時插入任何在SQLiteOpenHelper.onCreate(SQLiteDatabase)
期間插入的內容(這或多或少會使您回退無論如何,新的安裝)。 SQLiteOpenHelper
超類知道在調用getWritableDatabase()
或getReadOnlyDatabase()
方法之一來獲取數據庫引用時是否運行創建代碼。
值得注意的是,Android並沒有真正讓您像桌面軟件那樣運行安裝程序。如果您需要做任何設置工作,您需要能夠檢測並記住您的應用程序之前運行過的時間。
首先感謝您的回覆。你能舉出第一個選擇的例子嗎?我使用SQLiteOpenHelper並在我的主要活動的「onCreate」中插入數據。因此,它總是在應用程序啓動時插入相同的數據。 – BCK 2011-12-22 08:49:51
您將在構建過程中創建SQLite數據庫文件,並將其作爲[原始資源](http://developer.android.com/guide/topics/resources/providing-resources.html)。查看該表以獲取更多信息。 – Argyle 2011-12-22 19:22:54
您需要將插入語句放入SQLiteOpenHelper實現的'onCreate(SQLiteDatabase)'調用中。這幾乎可以肯定你有你的表創建語句。你的數據是否插入到同一個地方,並且只有在數據庫文件第一次創建時纔會執行插入操作。 – Argyle 2011-12-22 19:25:16
- 1. 開始:Android開發在線數據庫
- 2. 插入SQLite數據庫android
- 3. 插入到android數據庫
- 4. Android數據庫沒有插入數據
- 5. Android:將數據插入數據庫
- 6. Android開發 - 數據庫插入的空指針異常
- 7. Android:數據庫沒有保存插入
- 8. Android HttpGet請求Web數據庫插入
- 9. Android:無法將值插入數據庫
- 10. Android值未插入數據庫
- 11. NullPointerException當我插入數據庫(android)
- 12. 插入到Android數據庫的密鑰
- 13. 在sqlite數據庫中插入datetime android
- 14. Android:在Sqlite數據庫中插入datetime
- 15. 插入到SQL數據庫android eclipse
- 16. android數據庫插入問題
- 17. Android Java插入mysql數據庫
- 18. android web服務插入數據庫
- 19. Android SQLite數據庫:緩慢插入
- 20. Android數據庫插入錯誤
- 21. Android:插入Arraylist值到數據庫中
- 22. Android SQLite數據庫錯誤插入列
- 23. Android更快的數據庫插入
- 24. Android無法插入到SQLite3數據庫
- 25. 數據庫插入
- 26. 插入數據庫
- 27. 插入數據庫
- 28. 數據庫插入
- 29. 插入數據庫
- 30. 在Android中加入兩個表插入數據數據庫
「開始時」是指用戶開始使用應用程序的任意會話時,還是意味着有史以來第一次使用該應用程序? – Argyle 2011-12-21 21:13:09
我的意思是安裝後。數據將在應用程序安裝期間插入,之後當用戶啓動應用程序時,不得有插入操作。 – BCK 2011-12-21 23:18:58