Archives par mot-clé : SQLSTATE[HY000]

SQLite – SQLSTATE[HY000]: General error: 11 database disk image is malformed

Par deux fois déjà, un de mes fichiers de base de données SQLite a été corrompu. Les explications pour corriger ce problème foisonnent sur la toile, mais très souvent en anglais et pas forcément efficaces.

J’ai trouvé une solution qui a marché immédiatement dans mon cas, dénichée sur le site informatique anglophone Stack Overflow :

https://stackoverflow.com/questions/5274202/sqlite3-database-or-disk-is-full-the-database-disk-image-is-malformed

Je remets ici cette méthode, qui fonctionne sous GNU/Linux :

# Se déplacer dans le répertoire contenant le fichier SQLite corrompu
cd $DATABASE_LOCATION

# Utilisation de la commande sqlite3 pour réparer le fichier
echo '.dump' | sqlite3 $DB_NAME | sqlite3 repaired_$DB_NAME

# Renommer le fichier réparé
mv $DB_NAME corrupt_$DB_NAME
mv repaired_$DB_NAME $DB_NAME