как восстановить базу данных sqlite3 corrupt

Столкнулся с такой проблемой, нужно было восстановить данные в формате sqlite, файл был, но он был поврежден и был назван системой как corrupt, в следствие чего был создан новый файл.
Первое что пришло на ум, это открыть его и посмотреть есть ли там информация.. Открыл notepad+++ выставил кодировку, и о чудо, данные есть, но почему-то файл не воспринимается и пишется что он поврежден…
Есть такая утилита, sqlite3.exe (скачать сможете на оф. сайте http://www.sqlite.org/download.html )
Также вам нужно скачать для удобства sqlite_browser, программа напоминает phpmyadmin, в общем нужная штука..
Далее

sqlite3.exe corrupt.db

, где corrupt.db ваш файл с испорченной бд
После выполняем команду:

pragma integrity_check;

После сообщения ok, попробуем сделать дамп базы в формате SQL

echo .dump | sqlite3.exe corrupt.db > corrupt.sql

а потом снова создадим базу

sqlite3.exe -init corrupt.sql corrupt_new.db

Если все прошло успешно, то база данных восстановлена! теперь вы можете её использовать!

Комментариев нет »

Еще нет комментариев.

Оставить комментарий

Войти с помощью: 
Вы должны войти чтобы оставить комментарий.