Comment récupérer les données d’une table SQL corrompue ?

Summary: lorsqu'une table d'une base de données SQL est corrompue, vous pouvez restaurer les données de la table à partir de la sauvegarde la plus récente. Si la sauvegarde ne fonctionne pas, vous pouvez utiliser certaines méthodes pour récupérer les données de la table SQL corrompue. Essayez de réparer ou de reconstruire la table, exportez les données de la table SQL Server en utilisant l'utilitaire BCP, ou utilisez un outil de récupération SQL professionnel pour restaurer la base de données et toutes ses tables. Lisez les détails de ces méthodes.

Une table de la base de données SQL peut être corrompue en raison de problèmes de stockage, tels qu’un espace insuffisant sur le disque, des secteurs défectueux sur le disque, etc. En outre, une attaque de logiciels malveillants, un arrêt soudain du système et une suppression accidentelle de données sont d’autres facteurs susceptibles de provoquer la corruption d’une table. L’exécution de DBCC CHECKDB peut vous aider à détecter la corruption de la table. Par exemple, une erreur de corruption de table ressemble à ceci :

Méthodes pour récupérer les données d’une table SQL corrompue

Utilisez les méthodes ci-dessous dans le même ordre pour extraire autant de données que possible de la table corrompue. Toutefois, pour éviter de perdre des données, envisagez d’utiliser un outil de récupération SQL.

Méthode 1 – Exécuter la commande DBCC CHECKDB avec l’option de réparation

Comme vous pouvez le voir dans le message d’erreur ci-dessus, repair_allow_data_loss est suggéré comme niveau minimum de réparation pour corriger l’erreur. Exécutez DBCC CHECKDB avec l’option de réparation pour la table corrompue (comme indiqué ci-dessous).

dbcc checkdb (nom_de_la_table, repair_allow_data_loss)

Remplacez “nom_table” par le nom de la table SQL qui pose problème. Si cela ne fonctionne pas, essayez la méthode suivante.

Méthode 2 – Déplacer les données d’une table corrompue vers une nouvelle table

Remarque : cette méthode ne fonctionne que si la base de données est accessible. Si la base de données est également affectée, utilisez la méthode 3.

Extrayez tous les objets de la base de données actuelle et créez une nouvelle base de données avec une nouvelle table. Déplacez toutes les données, à l’exception de la table corrompue, vers la nouvelle base de données. Une fois que vous avez terminé, essayez de déplacer les données de la table vers la nouvelle. Les étapes détaillées sont les suivantes :

Si le problème persiste, passez à la méthode suivante.

Méthode 3 – Utiliser le programme de copie en bloc (BCP) pour exporter les données du tableau

Bulk Copy Program (BCP) est un programme de ligne de commande qui permet d’extraire des données d’une table de base de données SQL et de les exporter vers un format de fichier spécifié par l’utilisateur. Essentiellement, vous pouvez utiliser l’utilitaire BCP pour exporter toutes les bonnes données de la table corrompue dans un fichier de données. Vous pouvez ensuite réimporter les données dans une nouvelle table. Consultez ce lien pour savoir comment utiliser l’utilitaire.

Bien que cette méthode puisse fonctionner, copier les données d’un grand tableau et les importer dans un nouveau tableau peut prendre de longues heures, voire des jours.

Meilleure alternative pour récupérer les données d’une table SQL corrompue

Une meilleure alternative pour récupérer les données d’une table SQL corrompue est d’utiliser un outil de récupération SQL, comme Stellar Repair for MS SQL. Le logiciel peut aider à effectuer une récupération plus rapide des tables de la base de données SQL. Essentiellement, le logiciel répare les fichiers de base de données (MDF et NDF) et récupère tous les objets, y compris les tables, en quelques clics. Il permet même de récupérer les enregistrements supprimés. Voici comment fonctionne le logiciel :

Vous pouvez accéder aux données du tableau à partir du fichier réparé stocké à l’emplacement sélectionné.

Conclusion

Si la table de votre base de données SQL est devenue corrompue, vous pouvez d’abord vérifier la sauvegarde pour récupérer les données de la table. Si la sauvegarde n’est pas disponible ou ne fonctionne pas, suivez les méthodes discutées dans cet article pour récupérer les données de la table corrompue. Cependant, le meilleur moyen et le plus facile est d’utiliser un outil de récupération SQL pour récupérer toutes les données de la table.

Related Post

Exit mobile version