私の現在のプロジェクトで少し問題が発生しました。私はいくつかのステートメントを処理するためにSQLiteデータベースに接続する必要があるアンドロイドアプリケーションをやっています。私は文などがうまくいくと思う、私の唯一の問題は、データベースへの接続が成功していないという事実である。AndroidのSQLiteデータベース接続が成功しません
LogCatエラー:
04-18 08:20:30.688: E/Database(304): sqlite3_open_v2("jdbc:sqlite:res/raw/randomdb.db", &handle, 1, NULL) failed
ように、データベースに接続するための、これまでの私のコードは次のようである:あなたが見ることができるように
String url = "jdbc:sqlite:res/raw/randomdb.db";
SQLiteDatabase db;
db = SQLiteDatabase.openDatabase(url, null, SQLiteDatabase.OPEN_READONLY);
、私が配置されているデータベースをアクセスもしようとしています私のプロジェクト/ res/rawフォルダにあります。誰かが間違いを見ますか?
!!!更新! * 私はSQLiteOpenHelperと一緒に行くつもりでしたが、私は解決できないようなエラーに気づきました。 暗黙スーパーコンストラクタSQLiteOpenHelper()デフォルトコンストラクタの定義されていません:私はこのエラーを取得する *
public class DatabaseAdapter extends SQLiteOpenHelper {
private static String dbPath= "data/data/com.YourPackageName/applicationDb/";
private static String dbName = "YourDBName";
private SQLiteDatabase applicationDatabase;
private final Context applicationContext;
private boolean checkDataBase(){
File dbFile = new File(dbPath + dbName);
return dbFile.exists();
}
public void openDataBase() throws SQLException{
String fullDbPath= dbPath + dbName;
applicationDatabase = SQLiteDatabase.openDatabase(fullDbPath,null,SQLiteDatabase.OPEN_READONLY);
}
@Override
public void onCreate(SQLiteDatabase db) {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
:ここに私の新しいコードです。明示的なコンストラクタを定義する必要があります アイデア?素晴らしいことだ!