在操作数据库时候出现 sqlite3_open_v2("/data/data/xxx/databases/xxx.db", &handle, 6)failed
来源:互联网 发布:软件使用授权书模板 编辑:程序博客网 时间:2024/05/16 18:21
最近在做apk升级的时候数据库方出现了如标题一样的问题,一直没找到问题所在,请各位知情人士帮个忙。
大概是这样我做了一个应用,需要版本升级,升级的时候应用所用的数据库表字段有所修改,同事增加了新的表,在升级的时候我增加了数据库的版本号,
随后升级之后打开应用程序就会出现这样的错我,自我分析可能是权限问题,但是我是一个相同的应用所以这个不知道是不是正确。下面是执行的代码和
异常信息。
代码:
@Overridepublic void onCreate(SQLiteDatabase db) {// 执行建表语句try {db.execSQL(DBCommon.CREATE_TABLE_GAMETYPE);db.execSQL(DBCommon.CREATE_TABLE_GAMELIST);db.execSQL(DBCommon.CREATE_TABLE_ADS);db.execSQL(DBCommon.CREATE_TABLE_BUYLIST);db.execSQL(DBCommon.CREATE_TABLE_MOBILECONTROL);db.execSQL(DBCommon.CREATE_TABLE_DOWNLOAD);} catch (Exception e) {e.printStackTrace();LOG.d(DBG, TAG, "creat table Exception:" + e);}LOG.d(DBG, TAG, "SQLiteDatabase onCreate");}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {LOG.d(DBG, TAG, "SQLiteDatabase onUpgrade");db.execSQL("DROP TABLE IF EXISTS " + DBCommon.TABLE_GAMETYPE);db.execSQL("DROP TABLE IF EXISTS " + DBCommon.TABLE_GAMELIST);db.execSQL("DROP TABLE IF EXISTS " + DBCommon.TABLE_ADS);db.execSQL("DROP TABLE IF EXISTS " + DBCommon.TABLE_BUYLIST);db.execSQL("DROP TABLE IF EXISTS " + DBCommon.TABLE_MOBILECONTROL);db.execSQL("DROP TABLE IF EXISTS " + DBCommon.TABLE_DOWNLOADE);onCreate(db);}
异常信息:
08-16 15:41:20.795: I/SqliteDatabaseCpp(26920): sqlite returned: error code = 14, msg = cannot open file at line 27699 of [8609a15dfa], db=/data/data/com.andlisoft.station.game/databases/station.db08-16 15:41:20.795: I/SqliteDatabaseCpp(26920): sqlite returned: error code = 14, msg = os_unix.c: open() at line 27699 - "" errno=13 path=/data/data/com.andlisoft.station.game/databases/station.db, db=/data/data/com.andlisoft.station.game/databases/station.db08-16 15:41:20.795: E/SqliteDatabaseCpp(26920): sqlite3_open_v2("/data/data/com.andlisoft.station.game/databases/station.db", &handle, 6, NULL) failed08-16 15:41:20.945: I/ALSAModule(1868): Terminated ALSA PLAYBACK device hifi08-16 15:41:20.980: E/SQLiteDatabase(26920): Failed to open the database. closing it.08-16 15:41:20.980: E/SQLiteDatabase(26920): android.database.sqlite.SQLiteCantOpenDatabaseException: unable to open database file08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.database.sqlite.SQLiteDatabase.dbopen(Native Method)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1013)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:802)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)08-16 15:41:20.980: E/SQLiteDatabase(26920): at com.andlisoft.station.game.db.GameTypeDBControl.query(GameTypeDBControl.java:122)08-16 15:41:20.980: E/SQLiteDatabase(26920): at com.andlisoft.station.game.model.GameTypeModel.getGameTypeByName(GameTypeModel.java:103)08-16 15:41:20.980: E/SQLiteDatabase(26920): at com.andlisoft.station.game.appwidget.WidgetGetData.getData(WidgetGetData.java:26)08-16 15:41:20.980: E/SQLiteDatabase(26920): at com.andlisoft.station.game.appwidget.MainWidget.onReceive(MainWidget.java:120)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2242)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.app.ActivityThread.access$1500(ActivityThread.java:132)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1207)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.os.Handler.dispatchMessage(Handler.java:99)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.os.Looper.loop(Looper.java:137)08-16 15:41:20.980: E/SQLiteDatabase(26920): at android.app.ActivityThread.main(ActivityThread.java:4575)08-16 15:41:20.980: E/SQLiteDatabase(26920): at java.lang.reflect.Method.invokeNative(Native Method)08-16 15:41:20.980: E/SQLiteDatabase(26920): at java.lang.reflect.Method.invoke(Method.java:511)08-16 15:41:20.980: E/SQLiteDatabase(26920): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)08-16 15:41:20.980: E/SQLiteDatabase(26920): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)08-16 15:41:20.980: E/SQLiteDatabase(26920): at dalvik.system.NativeStart.main(Native Method)08-16 15:41:20.980: W/System.err(26920): android.database.sqlite.SQLiteCantOpenDatabaseException: unable to open database file08-16 15:41:20.980: W/System.err(26920): at android.database.sqlite.SQLiteDatabase.dbopen(Native Method)08-16 15:41:20.980: W/System.err(26920): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1013)08-16 15:41:20.980: W/System.err(26920): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)08-16 15:41:20.980: W/System.err(26920): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)08-16 15:41:20.980: W/System.err(26920): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:802)08-16 15:41:20.980: W/System.err(26920): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)08-16 15:41:20.980: W/System.err(26920): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)08-16 15:41:20.980: W/System.err(26920): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)08-16 15:41:20.980: W/System.err(26920): at com.andlisoft.station.game.db.GameTypeDBControl.query(GameTypeDBControl.java:122)08-16 15:41:20.980: W/System.err(26920): at com.andlisoft.station.game.model.GameTypeModel.getGameTypeByName(GameTypeModel.java:103)08-16 15:41:20.980: W/System.err(26920): at com.andlisoft.station.game.appwidget.WidgetGetData.getData(WidgetGetData.java:26)08-16 15:41:20.980: W/System.err(26920): at com.andlisoft.station.game.appwidget.MainWidget.onReceive(MainWidget.java:120)08-16 15:41:20.980: W/System.err(26920): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2242)08-16 15:41:20.980: W/System.err(26920): at android.app.ActivityThread.access$1500(ActivityThread.java:132)08-16 15:41:20.980: W/System.err(26920): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1207)08-16 15:41:20.980: W/System.err(26920): at android.os.Handler.dispatchMessage(Handler.java:99)08-16 15:41:20.980: W/System.err(26920): at android.os.Looper.loop(Looper.java:137)08-16 15:41:20.980: W/System.err(26920): at android.app.ActivityThread.main(ActivityThread.java:4575)08-16 15:41:20.980: W/System.err(26920): at java.lang.reflect.Method.invokeNative(Native Method)08-16 15:41:20.980: W/System.err(26920): at java.lang.reflect.Method.invoke(Method.java:511)08-16 15:41:20.980: W/System.err(26920): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)08-16 15:41:20.980: W/System.err(26920): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)08-16 15:41:20.980: W/System.err(26920): at dalvik.system.NativeStart.main(Native Method)08-16 15:41:20.980: E/ZQ_17StationGame_GameTypeDBControl(26920): android.database.sqlite.SQLiteCantOpenDatabaseException: unable to open database file
还请大家多多帮助。
- 在操作数据库时候出现 sqlite3_open_v2("/data/data/xxx/databases/xxx.db", &handle, 6)failed
- sqlite3_open_v2("/data/data/com.xxx.xxx/databases/xxx.db", &handle, 6, NULL) failed
- 关于“ERROR/Database(279): sqlite3_open_v2("/data/data/xxx.xxx.xxx/mydb", &handle, 6, N ”问题的解决方法
- sqlite3_open_v2(“/data/data/com.android.packagename/databases/dump.sqlite”, &handle, 1, NULL) failed
- Get data from file(xxx.png) failed!
- Get data from file(xxx.png) failed!
- 真机root后查看data/data/包名/databases/数据库名.db文件
- ORA-31693:Table data object xxx failed to load
- Cocos2d-x运行时错误:Cocos2d: Get data from file(xxx.xxx) failed!
- dlopen failed: "/data/app-lib/XXX/XXX.so" has unexpected e_machine: 40
- ni_to_addr xxx.xxx.xxx failed
- bootstrap中button在data-toggle="##" data-target="xxx"没起作用的解决方法
- 从asset复制数据库到data/data/databases
- ANDROID , ECLIPSE编译通过,运行报 Get data from file(XXX) failed
- cocos2dx开发报错Get data from file(images/xxx.png)failed!
- $.map(data,function(item,index){return XXX})
- sqlite发生错误时候多了 xxx.db-shm xxx.db-wal文件
- 开发工具修改data-XXX值,jq.data()取不到?
- if条件里有两个 或 (||) 符号
- 单元测试与main前运行函数__attribute__((constructor))关键字
- C# Dictionary序列化/反序列化
- ReportViewer 嵌套子报表
- K.Teamwork Brings Profits! 典型的dfs搜索
- 在操作数据库时候出现 sqlite3_open_v2("/data/data/xxx/databases/xxx.db", &handle, 6)failed
- oracle 怎么查看一个数据库中有几个表空间?以及这些表空间的名字?
- 为什么要去火星
- sql server 2000更新技巧&select 查询中带参数,游标中使用exec
- chromium的gdb
- ftl语法
- memcached全面剖析–4. memcached的分布式算法
- php页面调用shell命令的问题
- pku3083Children of the Candy Corn-模拟+bfs