Partager via


Vue d'ensemble de l'architecture des fonctionnalités de base de données de Visual Studio

Visual Studio offre un grand nombre des mêmes outils, fonctionnalités et fonctions aux développeurs de base de données que ceux proposés à d'autres membres d'une équipe de développement d'applications. Par exemple, vous pouvez utiliser le même système de contrôle de version et d'autres outils de cycle de vie pour votre base de données que les développeurs de logiciels utilisent pour leur code source. Dans la mesure où l'architecture de Visual Studio est intégrée très étroitement à Visual Studio Team Foundation Server, vous pouvez gérer plus facilement le processus de développement de bases de données tout en améliorant la coordination avec ceux qui développent d'autres aspects de l'application.

Pour plus d'informations sur les fonctions prenant en charge le développement de base de données dans Visual Studio, consultez Gestion des modifications de la base de données.

Intégration Visual Studio

Non seulement l'architecture principale de Visual Studio est intégrée au reste de Visual Studio Team Foundation Server, mais l'interface est également cohérente entre les composants. Vous utilisez des projets de base de données, des projets serveur et des projets d'application de couche Données quasiment de la même façon que vous utilisez d'autres types de projets dans Visual Studio. Les modèles spécifiques à la base de données sont disponibles dans les boîtes de dialogue Nouveau projet et Ajouter un élément de projet. De plus, vous pouvez exécuter des actions telles que la génération et le déploiement, et configurer des paramètres tels que la connexion à la base de données cible et le classement de la base de données, qui sont conçus spécifiquement pour le développement de bases de données.

Les projets de base de données apparaissent dans l'Explorateur de solutions en tant que pairs de types de projets existants. Vous pouvez placer ces projets sous contrôle de version, ajouter et supprimer des éléments de projet et les générer avec MSBuild.

Composition architecturale

Visual Studio inclut les zones architecturales suivantes :

  • Projet de base de données

  • Infrastructure du cycle de vie de la base de données

Chaque projet de base de données est une représentation hors connexion d'une base de données et se trouve dans la structure d'une solution Visual Studio. Vous devez générer et déployer les modifications apportées à un projet de base de données pour qu'elles soient répercutées sur une instance active de Microsoft SQL Server 2005 ou Microsoft SQL Server 2008.

Infrastructure du cycle de vie de la base de données

L'infrastructure du cycle de vie de la base de données fournit divers services entre le projet de base de données et la représentation logique (modèle) de la base de données. Cette infrastructure inclut des fonctionnalités fondamentales qui sont requises pour tout projet de base de données. Ces fonctionnalités sont collectivement connues sous le nom de fondation du projet de base de données. Les fonctionnalités basées sur cette fondation sont connues sous le nom de fonctionnalités du projet de base de données.

Fondation du projet de base de données

La fondation du projet de base de données inclut les fonctions principales suivantes :

  • Analyse des projets et éléments des projets
    La fondation analyse les artefacts de projet de base de données et les éléments des projets de base de données, tels que les tables, vues et procédures stockées. Lors de cette opération, elle extrait les informations sur les objets de base de données à partir des fichiers de script qui composent le projet de base de données. Par exemple, cette fonction s'applique lorsque vous importez des objets de base de données à partir des scripts de base de données existants. Les projets de base de données sont formés de collections de scripts Transact-SQL. Le système de projet de base de données interprète ces scripts afin que vous puissiez interagir avec eux comme objets de schéma logique.

  • Importer un schéma de base de données
    La fonction Importer un schéma de base de données vous permet d'ajouter une base de données existante à Visual Studio et de la placer sous contrôle de version. Même dans un environnement où la base de données est gérée sous contrôle de version, des modifications peuvent toujours se produire sur un serveur de base de données actif que vous devrez répercuter dans votre projet de base de données. Vous pouvez utiliser la comparaison de schémas pour importer des modifications à partir d'un serveur de base de données dans un projet de base de données qui est en cours de développement.

  • Suivi de dépendances entre des objets de base de données
    Le système de projet de base de données effectue automatiquement le suivi des dépendances entre des objets de base de données. En effectuant le suivi des dépendances entre des objets, vous garantissez que les objets corrects sont générés et déployés. Si vous introduisez une modification avec rupture dans votre produit, vous découvrez qu'il s'agit d'une modification avec rupture lorsque vous enregistrez la modification pour la première fois. Vous pouvez utiliser la Visionneuse des dépendances de schémas pour afficher et parcourir les dépendances entre les objets de base de données. En général, vous découvrez des modifications avec rupture lorsque vous essayez de générer, de déployer ou d'exécuter un test unitaire de base de données. La refactorisation de base de données utilise ces dépendances pour identifier les modifications requises et la génération de données peut vous indiquer les relations de dépendance dans le cadre de votre plan de génération de données.

  • Refactorisation de base de données
    La refactorisation de base de données identifie les dépendances entre des objets de base de données et utilise ces informations pour propager correctement les modifications dans la base de données et les projets de test unitaire. La refactorisation de base de données est uniquement disponible dans Visual Studio Premium et Visual Studio Ultimate.

  • Création de scripts de déploiement pour les déploiements nouveaux et existants
    Les scripts de déploiement sont utilisés pour créer une base de données ou mettre à jour une base de données existante afin de correspondre au schéma dans le projet de base de données. Ils sont composés de scripts de prédéploiement, de scripts de création d'objets de base de données et de scripts de post-déploiement. Si vous effectuez le déploiement vers une base de données existante, au moment du déploiement, le projet de base de données est comparé au schéma actuel de la base de données cible. Un script de mise à jour est généré pour mettre à jour la base de données cible à l'aide d'une combinaison d'instructions ALTER, CREATE et DROP.

  • Validation de générations
    Cette fonction valide la structure et les relations des objets dans votre projet de base de données, ainsi que la syntaxe des scripts de prédéploiement et de post-déploiement, puis fait état de ces résultats dans un rapport.

Fonctionnalités de projet de base de données

Outre les services principaux qui sont fournis pour les projets de base de données, d'autres fonctionnalités sont générées sur la fondation du projet de base de données. Elles comprennent :

  • Comparaison de schémas de base de données
    Fournit la possibilité de comparer deux schémas de base de données, que ceux-ci soient présents dans une version actuelle d'un projet de base de données, une version antérieure du fichier .dbschema compilé qui est créé lorsque vous générez un projet de base de données, ou sur une ou plusieurs bases de données actives. Vous pouvez également générer les scripts nécessaires pour que la structure de la base de données cible corresponde à celle de la base de données source. La comparaison de schémas est uniquement disponible dans Visual Studio Premium et Visual Studio Ultimate.

  • Comparaison de données de base de données
    Fournit la possibilité de comparer les données dans deux bases de données si vous disposez de bases de données actives avec des schémas correspondants. Vous pouvez également générer les scripts nécessaires pour que les données dans la base de données cible correspondent aux données contenues dans la base de données source. La comparaison de données est uniquement disponible dans Visual Studio Premium et Visual Studio Ultimate.

  • Tests unitaires de base de données
    Génère automatiquement des tests unitaires pour une procédure stockée ou une fonction et prend en charge la création manuelle des tests unitaires qui forment des Transact-SQL valides. En utilisant ce service, vous pouvez vérifier que les modifications introduites ailleurs n'arrêtent pas votre travail. Dans le cadre d'un test unitaire, vous pouvez générer et déployer automatiquement votre base de données et générer des données de test reproductibles pour établir un état initial cohérent. Ce service inclut également une API publique que vous pouvez utiliser pour écrire des conditions de test personnalisées afin d'ajouter une logique de validation réutilisable pour vos tests unitaires. Vous pouvez exécuter des tests unitaires de base de données dans Visual Studio Professional, Visual Studio Premium ou Visual Studio Ultimate, toutefois, Visual Studio Premium et Visual Studio Ultimate doivent être installés pour créer ou modifier des tests unitaires de base de données.

  • Génération de données
    Fournit la possibilité de remplir une base de données avec des données de test réalistes qui ne sont pas juste une copie de données de production, qui peuvent contenir des informations confidentielles. Vous pouvez aussi créer des générateurs de données personnalisés. Ce service inclut également une API publique pour l'écriture de générateurs de données personnalisés à utiliser avec des types de données CLR, des types définis par l'utilisateur et des types de données définis par l'utilisateur, ou pour utiliser des algorithmes de génération de données personnalisés pour les types intégrés. Vous devez disposer de Visual Studio Premium et Visual Studio Ultimate pour créer ou modifier des plans de génération de données.

  • Création et exécution de scripts de base de données
    Fournit un éditeur Transact-SQL dans lequel vous pouvez créer, analyser et exécuter des scripts de base de données de la même façon que vous utilisez l'analyseur de requêtes ou SQL Server Management Studio. Il s'agit du même éditeur que vous utilisez pour modifier vos scripts dans le projet de base de données. Dans la mesure où il s'agit du même éditeur, il fournit une interface utilisateur cohérente que vous utilisiez un projet de base de données hors connexion ou exécutiez directement des scripts sur un serveur de base de données actif.

Prise en charge de la ligne de commande

Certaines des activités que vous effectuez régulièrement doivent pouvoir être réalisées dans le cadre d'un processus automatisé. Pour prendre en charge ce scénario, vous pouvez générer votre projet de base de données, le déployer et exécuter des tests unitaires à partir de la ligne de commande, qui peuvent inclure la génération de données de test représentatives et prévisibles.

Voir aussi

Tâches

Procédure pas à pas : création d'un environnement de développement de base de données isolé

Procédure pas à pas : établissement d'une planification initiale pour l'environnement de développement isolé

Procédure pas à pas : exécution d'un développement de base de données itératif dans un environnement de développement isolé

Concepts

Gestion des modifications de la base de données

Extension des fonctionnalités de base de données de Visual Studio