尝试在android中编写只读数据库

尝试在android中编写只读数据库,android,database,Android,Database,尝试更新值时,会发生以下错误: 02-09 11:37:53.573: ERROR/AndroidRuntime(4809): android.database.sqlite.SQLiteException: attempt to write a readonly database: UPDATE studnet SET isMarried=1 WHERE _id = 40 我的数据库文件 …data/data/a.b.c/test.sql 以及我在DBHelper.java中的查询 pub

尝试更新值时,会发生以下错误:

02-09 11:37:53.573: ERROR/AndroidRuntime(4809): android.database.sqlite.SQLiteException: attempt to write a readonly database: UPDATE studnet SET isMarried=1  WHERE _id = 40
我的数据库文件

…data/data/a.b.c/test.sql

以及我在DBHelper.java中的查询

public void checkMarried(int checkPoint) {
    String Query = "UPDATE student SET ismarried=1  WHERE _id = " + checkPoint ;
    DB.execSQL(Query);
}
执行代码是

String iNumber = cur.getString(cur.getColumnIndex("_id"));
int checkNumber=Integer.parseInt(iNumber);
db.bookmarkedJok(checkNumber);
其中db是DatabaseHelper的对象


如何更改数据库文件的权限?

在使用checkMarried()方法执行查询之前,请使用getWritableDatabase()


希望它现在能起作用。

如果你认为答案对你有帮助,你应该接受它
 public void checkMarried(int checkPoint) {

        DB=this.getWritableDatabase() ;
        String Query = "UPDATE student SET ismarried=1  WHERE _id = " + checkPoint ;
        DB.execSQL(Query);

      }