Android Exception - SQLiteDatabaseLockedException

来源:互联网 发布:java环境安装教程 编辑:程序博客网 时间:2024/05/10 21:27

问题描述

在Android中使用 sqlDroid jdbc驱动访问sqlite数据库未正常关闭,当再次请求数据库连接时,将导致sqlite数据库锁定,出现异常。

错误信息

05-31 18:11:43.571 21258-21258/? E/SQLiteDatabase: Failed to open database '/data/data/com.../databases/test.db'.  android.database.sqlite.SQLiteDatabaseLockedException: database is locked (code 5): , while compiling: PRAGMA journal_mode      at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)      at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:886)      at android.database.sqlite.SQLiteConnection.executeForString(SQLiteConnection.java:631)      at android.database.sqlite.SQLiteConnection.setJournalMode(SQLiteConnection.java:313)      at android.database.sqlite.SQLiteConnection.setWalModeFromConfiguration(SQLiteConnection.java:287)      at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:215)      at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)      at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)      at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)      at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)      at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:804)      at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:789)      at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:694)      at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:669)      at org.sqldroid.SQLiteDatabase.<init>(SQLiteDatabase.java:89)      at org.sqldroid.SQLDroidConnection.<init>(SQLDroidConnection.java:131)      at org.sqldroid.SQLDroidDriver.connect(SQLDroidDriver.java:64)      at java.sql.DriverManager.getConnection(DriverManager.java:175)      at java.sql.DriverManager.getConnection(DriverManager.java:140)

解决方法

待确认

0 0