2

如果 SQLiteDatabase.isDatabaseIntegrityOK() 返回 false,我如何访问数据库应该返回的 1-100 行日志?

我想在我的 Android 应用中显示完整性检查的结果。

谢谢!

4

2 回答 2

2

只需自己执行命令,并假装它是SELECT

Cursor cursor = db.rawQuery("PRAGMA integrity_check", null);
while (cursor.moveToNext()) {
    String s = cursor.getString(0);
    ...
}
于 2013-02-08T11:23:21.737 回答
2

使用 Android 的 DatabaseUtils 的替代方法:

StringBuilder sb = new StringBuilder();
DatabaseUtils.dumpCursor(db.rawQuery("PRAGMA integrity_check", null), sb);
于 2014-10-30T18:21:07.520 回答