Published on

April 29, 2016

Comparaison des tables dans SQL Server

Lorsque vous travaillez avec SQL Server, il est courant d’apporter des modifications aux requêtes et aux structures de base de données. Cependant, il est important de s’assurer que ces modifications n’introduisent pas de problèmes ou de divergences inattendus dans les données. Une façon de vérifier l’exactitude de ces modifications est de comparer le contenu et la structure de deux tables. Dans cet article, nous explorerons différentes méthodes pour accomplir cette tâche.

Outils achetés

Il existe plusieurs outils disponibles dans le commerce tels que Sql Delta, Redgate et Idera qui fournissent une interface utilisateur graphique pour comparer les tables. Ces outils ont été largement testés et sont réputés pour produire des résultats précis. Cependant, ils ont un coût et certaines entreprises peuvent avoir des restrictions sur l’installation de logiciels supplémentaires sur leurs machines. De plus, ces outils comparent généralement deux bases de données, vous devriez donc exporter chaque table dans une base de données différente pour la comparaison.

Créez votre propre solution

Si vous préférez une solution gratuite et souhaitez pratiquer vos compétences en T-SQL, vous pouvez écrire vos propres requêtes pour comparer la structure et les données de deux tables. Cette approche permet plus de flexibilité mais peut être chronophage, surtout lorsqu’il s’agit de grands ensembles de données. Il est important de traiter les valeurs NULL séparément et de s’assurer que la requête de comparaison est précise. Bien que cette méthode ne puisse pas offrir le même niveau de performance que les outils achetés, elle peut être une bonne expérience d’apprentissage.

TABLEDIFF.exe

TABLEDIFF.exe est un outil en ligne de commande fourni par Microsoft, principalement destiné à être utilisé avec la réplication. Cependant, il peut également être utilisé pour comparer des tables à nos fins. Cet outil présente l’avantage d’être gratuit et bien testé. Il offre différentes options et paramètres qui peuvent être personnalisés selon vos besoins.

Une option importante à prendre en compte est le drapeau “-STRICT”, qui garantit qu’il n’y a pas de marge de manœuvre sur les types de données lors de la comparaison. Cela peut être utile lorsque vous souhaitez imposer une correspondance stricte des types de données. Une autre option est le drapeau “-b”, qui spécifie le nombre d’octets à vérifier sur les types de données volumineux. Si vous ne vous souciez pas de vérifier chaque caractère de données, vous pouvez gagner du temps en ajustant ce paramètre. De plus, le drapeau “-f” vous permet de générer un script des modifications à apporter pour que les fichiers correspondent, ce qui peut être utile pour le dépannage et la compréhension des différences entre les deux tables.

En fin de compte, il existe plusieurs approches pour comparer des tables dans SQL Server, chacune ayant ses avantages et ses inconvénients. Que vous choisissiez d’utiliser des outils achetés, d’écrire vos propres requêtes ou d’utiliser TABLEDIFF.exe, il est important de garantir l’exactitude et la cohérence de vos données. En effectuant des tests et des vérifications approfondis, vous pouvez apporter des modifications à vos requêtes et à vos structures de base de données en toute confiance, sans introduire de problèmes inattendus.

Filed under: Microsoft SQL Server, Performance, SQLServerPedia Syndication, T-SQL

Tagged: microsoft sql server, Performance, tools

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.