2011-08-09 17 views
13

それでは、アンドロイドでデータベースを扱うのが初めてで、作成されたデータベースを表示する方法が分からないようです。Androidエミュレータで既存のsqliteデータベースにアクセスするにはどうすればよいですか?

私はデータベースアダプタクラスを作成し、私の主なアクティビティクラスに作成しました。

私はエミュレータで問題なく実行しますが、内容はどのように表示されますか? 本の読書に「DDMSを使ってAndroidデバイス/エミュレータのファイルシステムを調べてください。データベースはデータベースフォルダ「 」の下に作成され、Eclipseのデータベースフォルダの下にデータベースのイメージがあります。 最初の部分が実際に何を意味するのか分かりません(DDMSを使用していますか?)/ data/dataフォルダがどこにあるのかはわかりません。

CMDでSQLite3を実行し、 ".tables"と入力してもデータベースが生成されません。

答えて

23

Eclipseで[ウィンドウ]> [Persepective]> [その他]> [DDMS]を選択します。以下の答えの画像のようなDBにナビゲートし、データベースを選択してから、フロッピディスクアイコンをクリックして、右上のデバイスからファイルを取り出します。

エミュレータでは、DDMS内の場所は、[ファイルエクスプローラ]タブの/data/data/com.yourNamespace/dataDBである必要があります。

enter image description here これはDDMSパースペクティブの写真です。右側の[ファイルエクスプローラ]タブで、データベースフォルダをドリルダウンします。これらは仮想フォルダなので、システム上で見つけることはできません。データベースを調べるには、のアイコンを選択してください(このスクリーンショットで切り取ってしまった)デバイスからファイルを取り出し、そのファイルをSQLiteで開きます。

2

携帯電話をルートしなかった場合、あなたのアプリだけがあなたのデータベースにアクセスでき、DDMSで見ることはできません。 copies the database to the storage card (make sure you have the external storage permission)という関数を実装する必要があります。そこから、aSQLiteManagerのようなアプリケーションでデータベースを見ることができます。

また、カーソルとともに、Logメソッドを使用するだけで、必要な情報を印刷することができますが、最初の方法ではデータベースをよりよく理解するためのグラフィカルな方法が提供されます。

1

データベースはエミュレータ上に作成されます。/data/data/[パッケージ]/databases/ にある必要があります。DDMSを使用して、エミュレータのファイルシステムをナビゲートし、そこからデータベースファイルを取り出してローカルで調べることができます。

または、シェル(adbシェル)でsqlite3を使用して調べることができます。>adb -e shell

--->su root

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

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

-

+0

SQLite3のは – Rob

+0

sqliteのがそれを言っていない何のデータベースが存在しないと言います。そのフォルダに移動してコンテンツを表示します。ファイルが存在しない場合、dbの作成に失敗しました。 –

7

はCMD

からアプリからdatabseを取得します - - >exit

--->exit

- >adb pull sdcard/DCIM/databasename.db

+1

データフォルダに何も表示されませんでしたが、このコマンドはdbファイルをプルするのに役立ちました。ありがとう – ashishdhiman2007

+0

私はDBを引っ張り、DBブラウザを使ってSQLiteをフルDBアーキテクチャで見ることができました。ありがとう。 – ankurdayalsingh

関連する問題