私の問題は、Androidアプリケーションで既存のsqlite-databaseを使用することです。私はへの間違ったパスを使用することを疑うAndroidで既存のSQLiteデータベースを使用する
08-17 06:35:18.416: ERROR/Database(286): sqlite3_open_v2("data/data/com.jeston.existed.sqlite/databases/android_test_db.db", &handle, 1, NULL) failed
08-17 06:35:18.437: ERROR/AndroidRuntime(286): Uncaught handler: thread main exiting due to uncaught exception
08-17 06:35:18.457: ERROR/AndroidRuntime(286): android.database.sqlite.SQLiteException: unable to open database file
:このアプリは、私はエラーを取得しています、起動している間http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications
- は、それを管理するために、私は自分の仕事を説明し、よく知られた記事を、使用しましたmydatabase.Iは、資産フォルダに私のandroid_test_dbファイルを置くと、ブログに書かれたように、
private final static String DB_PATH = "data/data/com.jeston.existed.sqlite/databases/";
private final static String DB_NAME = "android_test_db.db";
だから、私の質問はありませんこれらのpathesが正しいかありましたか?または、私は共通の間違った方法でいるかもしれませんか?
ありがとうございます。
はしているようだ、何も - この変更後のbecouse私は間違いを得なかっました:データベースファイルを開くことができません。私のメソッドでエラーをローカライズしました: public int getCountRecords() { カーソルc = myDB.query(DB_NAME、new String [] {"_id"、 "name"、 "age"} 、null、null、null、null、null); return c.getCount(); }; このメソッドは例外をスローします - そのようなテーブルはありません "android_test_table" –
ああ、だが、なぜDB_NAMEでクエリを行うのですか?クエリ(...)の最初のパラメータはテーブル名でなければなりません。 –
Yeeeh、あなたの権利、絶対に。ありがとう、問題は、私の最初の議論はデータベースの名前であってテーブルの名前ではないという点であった。 –