A voir également:
- Logiciel Comparaison Données
- Logiciel - Guide
- Money logiciel - Télécharger - Comptabilité & Facturation
- Ce petit logiciel gratuit optimise complètement votre PC en quelques clics - Guide
- Ce logiciel gratuit répare automatiquement votre PC quand Windows a des problèmes - Guide
- Logiciel de sauvegarde gratuit - Guide
3 réponses
Il y a une méthode relativement peu couteuse:
Exporter chaque table, triée selon la clé primaire, sous format CSV.
Puis comparer ces CSV entre eux avec des logiciels comme diff ou ExamDiff (ou même par ton programme lui-même).
ça permet de développer rapidement des systèmes de comparaison.
Et ça marche généralement assez bien pour voir les enregistrements ajoutés, supprimés ou modifiés.
Exporter chaque table, triée selon la clé primaire, sous format CSV.
Puis comparer ces CSV entre eux avec des logiciels comme diff ou ExamDiff (ou même par ton programme lui-même).
ça permet de développer rapidement des systèmes de comparaison.
Et ça marche généralement assez bien pour voir les enregistrements ajoutés, supprimés ou modifiés.
tout d'abbord merci pour ta réponse mais une chose que j'aurais du expliker: j'ai environ 100 tables sur différents SGBDR (SQL Server , Oracle et Access) et faire l'export pour chaque type 100 * 3 = 300 exports en CSV sachant que l'export est différent pour chaque type de SGBDR. et donc voila pour quoi je cherche a mettre tout ca dans un prog.
Merci encore
Merci encore
Je vois.
Dans ce cas, il faut extraire automatiquement le nom des tables, et les exporter en automatique.
Par exemple sous SQL Server, pour avoir la liste des tables d'une base on fait:
select name from sysobjects where xtype='U'
Je pense qu'on doit pouvoir faire l'équivalent pour chaque type de serveur de base de données.
Bien sûr il faut avoir assez d'espace disque pour stocker tout cela...
Dans ce cas, il faut extraire automatiquement le nom des tables, et les exporter en automatique.
Par exemple sous SQL Server, pour avoir la liste des tables d'une base on fait:
select name from sysobjects where xtype='U'
Je pense qu'on doit pouvoir faire l'équivalent pour chaque type de serveur de base de données.
Bien sûr il faut avoir assez d'espace disque pour stocker tout cela...
Bien qu'il soit un peu tard pour répondre à cette question , une réponse peut toujours intéresser ceux qui comme moi tomberont sur cette discussion para hasard :
http://blogs.developpeur.org/...
où il est dit :
"Tablediff" est un outil situé dans "C:\Program Files\Microsoft SQL Server\90\COM", disponible dans n'importe quelle édition de SQL Server 2005 (à verifier pour Express). Elle est utilisée par la réplication pour la comparaison des données lors d'une synchronisation de snapshot.
Comment fonctionne cette commande ?
Vous avez 2 groupes d'options « source » et « destination ». Par défaut vous n'avez qu'à spécifier le serveur, la base de données et la table. Voici un exemple simple :
tablediff -sourceserver .\devx64 -sourcedatabase northwind -sourcetable employee -destinationserver .\devx86 -destinationdatabase northwind -destinationtable employee
Ici je compare la table « employee » de la base « Northwind » de mon instance locale « devx64 » avec mon instance locale « devx86 ». Le tout avec l'authentification Windows pour la connexion.
Pour aller plus loin vous pouvez utiliser le nom du schéma, un nom d'utilisateur et mot de passe dans les options de sources et de destination.
Le plus important, c'est qu'il est possible de choisir le mode de comparaison des données :
« -q » permet de ne comparer que le nombre d'enregistrement des 2 tables
« -c » permet de faire une comparaison complète de tous les champs
Il est aussi possible à l'aide de l'option « -f » de créer un fichier de script SQL permettant de mettre à jour la table de destination pour qu'elle soit la copie conforme de la table source.
Un outil indispensable et gracieusement offert avec SQL Server 2005.
http://blogs.developpeur.org/...
où il est dit :
"Tablediff" est un outil situé dans "C:\Program Files\Microsoft SQL Server\90\COM", disponible dans n'importe quelle édition de SQL Server 2005 (à verifier pour Express). Elle est utilisée par la réplication pour la comparaison des données lors d'une synchronisation de snapshot.
Comment fonctionne cette commande ?
Vous avez 2 groupes d'options « source » et « destination ». Par défaut vous n'avez qu'à spécifier le serveur, la base de données et la table. Voici un exemple simple :
tablediff -sourceserver .\devx64 -sourcedatabase northwind -sourcetable employee -destinationserver .\devx86 -destinationdatabase northwind -destinationtable employee
Ici je compare la table « employee » de la base « Northwind » de mon instance locale « devx64 » avec mon instance locale « devx86 ». Le tout avec l'authentification Windows pour la connexion.
Pour aller plus loin vous pouvez utiliser le nom du schéma, un nom d'utilisateur et mot de passe dans les options de sources et de destination.
Le plus important, c'est qu'il est possible de choisir le mode de comparaison des données :
« -q » permet de ne comparer que le nombre d'enregistrement des 2 tables
« -c » permet de faire une comparaison complète de tous les champs
Il est aussi possible à l'aide de l'option « -f » de créer un fichier de script SQL permettant de mettre à jour la table de destination pour qu'elle soit la copie conforme de la table source.
Un outil indispensable et gracieusement offert avec SQL Server 2005.