Как вы определяете, поврежден ли .sqlite или .sqback в Java?

Мне был предоставлен каталог каталогов, каждый из которых содержит коллекцию файлов .sqlite и .sqback, которые я должен анализировать.

Проблема в том, что я считаю, что некоторые из этих файлов повреждаются, когда я их получаю, потому что получаю сообщение об ошибке: ERR: [SQLITE_CORRUPT] Образ диска базы данных искажен (образ диска базы данных искажен) на моей консоли, когда я пытаюсь их обработать , Это происходит только с некоторыми файлами. Я выделил несколько и попытался запустить мою программу на свежих копиях этих плохих файлов по отдельности, и они вызывают ошибки. Большинство файлов прекрасно, хотя 🙂

Я понял, что есть вероятность, что я действительно могу получить коррумпированные файлы, чтобы начать с этого, поэтому я хотел бы определить способ, прежде чем пытаться их проанализировать, какие файлы хороши, а какие нет.

Я пишу на Java. Меня интересует только проверка sqlite и sqback, так как я знаю, что работает мой парсер. Я использую его повторно из предыдущего проекта.

Подсказка? Предложения? Ответы?

Большое спасибо за передачу знаний.

    Запустите PRAGMA quick_check как обычный SQL-запрос. Результат такой же, как таблица с одним столбцом, содержащая строки; Для неповрежденной базы данных вы получаете одну строку с надписью «ok», для поврежденной, кучу сообщений об ошибках.

     sqlite> pragma quick_check; ok 

    После изменения некоторых байтов в файле:

     sqlite> pragma quick_check; *** in database main *** Page 64: btreeInitPage() returns error code 11 On tree page 40 cell 23: Child page depth differs On tree page 40 cell 24: Child page depth differs 

    Нет никакой гарантии, что ошибки будут найдены.

    Intereting Posts
    Как правильно спроектировать / настроить Android-навигатор Замена для Android Mapview для использования службы WMS Android Studio против русского языка Android: ошибка GL при изменении размера: 0x506 (игнорируется) Лучший способ периодически посещать опрос приложений для Android Как отключить / удалить ярлык активности Android и панель ярлыков? Отображение Gridview в соответствии с фактической высотой в прокрутке Использование surfaceView для захвата видео Android не может получать многоадресный пакет Отсутствие экспертного сертификата Exception – Volley и Android с самоподписанным сертификатом Проект Android Studio: нижняя часть пользовательского интерфейса отключена Стиль кнопки добавляет неизвестный атрибут – Android Ошибка выполнения Proguard с внешней банкой Admob На Android, должен / я могу использовать один однопользовательский объект Gson вместо вызова нового Gson () повсюду? Увеличить масштаб, уменьшить масштаб – javascript / jquery / jquery мобильные события для Интернета на платформе Android?