2011-08-09 135 views
13

所以即時通訊工作與數據庫在android中,我似乎無法弄清楚如何查看創建的數據庫。如何訪問Android模擬器上的現有sqlite數據庫?

我創建了數據庫適配器類,並在我的主要活動類中。

我在沒有問題的模擬器中運行它,但是如何查看內容? 本書即時閱讀說:「使用DDMS檢查Android設備/仿真器的文件系統。該數據庫在數據庫文件夾」 下創建,並且具有Eclipse中數據庫文件夾下數據庫的映像。 我不知道第一部分的真正含義(使用DDMS?),並且不知道人們提及的/ data/data文件夾的位置。

即使在CMD中運行SQLite3並鍵入「.tables」也不會產生任何數據庫。

回答

23

在Eclipse中轉到窗口>打開Persepective>其他> DDMS。像下面答案中的圖像一樣導航到數據庫,選擇數據庫,然後單擊floppydisk圖標以從右上角的設備中提取文件。

在模擬器中,DDMS中的位置應該在文件資源管理器選項卡中爲/data/data/com.yourNamespace/databases。

enter image description here 這是DDMS觀點的圖片。在右側的文件資源管理器選項卡中,您可以深入查看數據庫文件夾。這些是虛擬文件夾,所以你不會在你的系統上找到它們。爲了檢查數據庫,你需要選擇的圖標從設備中拉取文件(對不起,它在這個截圖中被裁剪掉)並在SQLite中打開該文件。

2

如果您沒有root用戶的手機,只有您的應用可以訪問您的數據庫,並且無法通過DDMS查看它。您將需要實現一個功能copies the database to the storage card (make sure you have the external storage permission)。從那裏,你可以用像SQLiteManager這樣的應用程序查看你的數據庫。

或者,您可以使用Log方法和光標一起打印出您需要的任何信息,但第一種方法將爲您提供更仔細地查看數據庫的方法。

1

數據庫在仿真器上創建。應該位於/ data/data/[package]/databases/ 您可以使用DDMS導航模擬器的文件系統,並從中取出數據庫文件以在本地進行檢查。

或者你可以在shell(adb shell)上使用sqlite3來檢查它。

+0

SQLite3的說,有沒有數據庫 – Rob

+0

SQLite不說。轉到該文件夾​​並查看內容。如果文件不存在,則無法創建數據庫。 –

7

從應用程序從CMD

檢索DATABSE

- >adb -e shell

--->su root

--->cd data/data/app.name.com/databases

--->cp databasename.db /sdcard/DCIM/

- - >exit

--->exit

- >adb pull sdcard/DCIM/databasename.db

+1

我無法看到數據文件夾中的任何內容,但該命令幫助我拉取數據庫文件。謝謝 – ashishdhiman2007

+0

我能夠拉DB,並使用數據庫瀏覽器的SQLite能夠查看完整的數據庫架構。非常感謝。 – ankurdayalsingh

相關問題