我需要在Android 2.2上创建新数据库之前检查现有数据库。如何检查?
答案 0 :(得分:1)
使用openOrCreateDatabase
方法
-----编辑------
public boolean checkDataBase(){
SQLiteDatabase checkDB = null;
try{
String myPath = DB_PATH + DB_NAME;
checkDB = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY | SQLiteDatabase.NO_LOCALIZED_COLLATORS);
}catch(SQLiteException e){
//database does't exist yet.
}
if(checkDB != null){
checkDB.close();
}
return checkDB != null ? true : false;
}
答案 1 :(得分:1)
不适用于 DatabaseHelper 吗? 如果您还没有尝试过,我之前发布的代码是......
答案 2 :(得分:0)
您应该检查数据库是否已存在,如果不是,则创建数据库,否则不创建数据库。请您使用以下查询。
CREATE TABLE如果不存在TABLE_NAME(key data_type);
在onCreate方法中调用此查询。
答案 3 :(得分:-1)
要检查数据库是否已创建,您可以使用以下代码,每次打开应用程序时都不会重新创建。 dbName =是您的DB名称
public static boolean doesDatabaseExist(Context context, String dbName) {
File dbFile = context.getDatabasePath(dbName);
return dbFile.exists();
}