Java 替换现有DB文件时,尝试写入只读数据库时出错(代码1032)

Java 替换现有DB文件时,尝试写入只读数据库时出错(代码1032),java,android,Java,Android,当我试图删除旧的db文件并从assets文件夹复制新的db文件时,我遇到了错误: attempt to write a read only database (code 1032) 它将我的openDatabase方法显示到行: mDatabase = this.getReadableDatabase(); 我尝试将其更改为getWriteableDatabse,但没有任何更改(( 有人能帮我解决这个问题吗?复制之前你关闭了数据库吗?当我在DatabaseHelper类的构造函数中更改数据库

当我试图删除旧的db文件并从assets文件夹复制新的db文件时,我遇到了错误:

attempt to write a read only database (code 1032)
它将我的
openDatabase
方法显示到行:

mDatabase = this.getReadableDatabase();
我尝试将其更改为
getWriteableDatabse
,但没有任何更改((


有人能帮我解决这个问题吗?

复制之前你关闭了数据库吗?当我在DatabaseHelper类的构造函数中更改数据库的版本时,我尝试在OnUpgrade方法中删除旧的数据库文件,如下所示:
public void OnUpgrade(SQLiteDatabase db,int oldVersion,int newVersion){if(newVersion>oldVersion){mContext.deleteDatabase(DBNAME);}
之后我应该使用
db.close()
吗?下面是我的openDatabase方法:`public void openDatabase(){String dbPath=mContext.getDatabasePath(DBNAME).getPath();if(mDatabase!=null&&mDatabase.isOpen()){return;}mDatabase=SQLiteDatabase.openDatabase(dbPath,null,SQLiteDatabase.OPEN_READWRITE);this.getWritableDatabase();}`