zoukankan      html  css  js  c++  java
  • Android 数据库 OrmLite Failed to open database

    04-01 16:49:32.720: E/SQLiteLog(1894): (14) cannot open file at line 30204 of [00bb9c9ce4]
    04-01 16:49:32.720: E/SQLiteLog(1894): (14) os_unix.c:30204: (2) open(/data/data/com.xxx.test/databases/weaver_data) -
    04-01 16:49:32.730: E/SQLiteDatabase(1894): Failed to open database '/data/data/com.xxx.test/databases/weaver_data'.
    04-01 16:49:32.730: E/SQLiteDatabase(1894): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:212)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:196)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:464)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:186)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:178)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:698)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:983)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.j256.ormlite.android.AndroidConnectionSource.getReadWriteConnection(AndroidConnectionSource.java:66)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.j256.ormlite.android.AndroidConnectionSource.getReadOnlyConnection(AndroidConnectionSource.java:54)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.j256.ormlite.dao.BaseDaoImpl.idExists(BaseDaoImpl.java:805)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.j256.ormlite.dao.BaseDaoImpl.createOrUpdate(BaseDaoImpl.java:335)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.xxx.b.data.DataService.createOrUpdate(DataService.java:175)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.xxx.b.data.model.AbstractDataItem.update(AbstractDataItem.java:21)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.xxx.b.data.DataService.handleDataEvent(DataService.java:128)
    04-01 16:49:32.730: E/SQLiteDatabase(1894): at com.xxx.b.data.DataService.run(DataService.java:89)
    04-01 16:49:32.730: W/System.err(1894): java.sql.SQLException: Getting a writable database from helper DatabaseHelper@41a2b838 failed
    04-01 16:49:32.730: W/System.err(1894): at com.j256.ormlite.misc.SqlExceptionUtil.create(SqlExceptionUtil.java:22)
    04-01 16:49:32.730: W/System.err(1894): at com.j256.ormlite.android.AndroidConnectionSource.getReadWriteConnection(AndroidConnectionSource.java:68)
    04-01 16:49:32.730: W/System.err(1894): at com.j256.ormlite.android.AndroidConnectionSource.getReadOnlyConnection(AndroidConnectionSource.java:54)
    04-01 16:49:32.730: W/System.err(1894): at com.j256.ormlite.dao.BaseDaoImpl.idExists(BaseDaoImpl.java:805)
    04-01 16:49:32.730: W/System.err(1894): at com.j256.ormlite.dao.BaseDaoImpl.createOrUpdate(BaseDaoImpl.java:335)
    04-01 16:49:32.730: W/System.err(1894): at com.xxx.b.data.DataService.createOrUpdate(DataService.java:175)
    04-01 16:49:32.730: W/System.err(1894): at com.xxx.b.data.model.AbstractDataItem.update(AbstractDataItem.java:21)
    04-01 16:49:32.730: W/System.err(1894): at com.xxx.b.data.DataService.handleDataEvent(DataService.java:128)
    04-01 16:49:32.730: W/System.err(1894): at com.xxx.b.data.DataService.run(DataService.java:89)
    04-01 16:49:32.730: W/System.err(1894): Caused by: android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:212)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:196)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:464)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:186)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:178)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:698)
    04-01 16:49:32.730: W/System.err(1894): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:983)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224)
    04-01 16:49:32.730: W/System.err(1894): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164)
    04-01 16:49:32.730: W/System.err(1894): at com.j256.ormlite.android.AndroidConnectionSource.getReadWriteConnection(AndroidConnectionSource.java:66)
    04-01 16:49:32.730: W/System.err(1894): ... 7 more

    开始以为是路径权限有问题。

    后来查出是:使用Android JUnit Test方式测试A工程。而A工程和Test工程 是两个独立的工程。

    造成A工程建立了数据库,在Test工程中访问受限。

  • 相关阅读:
    ActiveMq主从机制
    Calling handler.OnEndpointsUpdate报错原因
    【Android Studio安装部署系列】二十二、Android studio自动生成set、get方法
    【Android Studio安装部署系列】二十一、Android studio将项目上传到github中
    【Android Studio安装部署系列】二十、Android studio如何将so文件添加到svn中
    【Android Studio安装部署系列】十九、Android studio使用SVN
    【Android Studio安装部署系列】十八、Android studio更换APP应用图标
    【Android Studio安装部署系列】十七、Android studio引用第三方库、jar、so、arr文件
    【Android Studio安装部署系列】十六、Android studio在layout目录下新建子目录
    【Android Studio安装部署系列】十五、Android studio添加Assets目录
  • 原文地址:https://www.cnblogs.com/maxiaodoubao/p/4384724.html
Copyright © 2011-2022 走看看