Visual Studio 2017 : Les nouveautés

Utiliser ReadyRoll Core

Testez gratuitement nos 1300 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Visual Studio 2017 intègre trois outils fournis par Redgate pour travailler avec SQL Server. Dans cette vidéo, vous utiliserez ReadyRoll pour faire du déploiement de scripts SQL Server.
09:13

Transcription

Il y a quelques fonctionnalités qui ont été ajoutées dans la gestion des bases de données « SQL Server ». Il y a trois ajouts qui ont été faits en collaboration avec une société qui s’appelle « Red Gate » et qui crée des outils propres à « SQL Server ». Il y a un outil qui est disponible dans l’édition « communautaire » et deux outils qui sont disponibles aussi dans l’édition « Entreprise ». Je vais vous montrer un outil qui s’appelle « Ready Roll » et qui est disponible avec « Visual Studio Entreprise » dans son édition « core », c'est-à-dire une édition légèrement simplifiée. Je vais faire « Fichier », « Nouveau », « Projet ». Je vais aller chercher un projet de bases de données dans les modèles « Autres langages » et « SQL Server ». Et au lieu de faire un projet de base de données « SQL Server », c'est-à-dire un projet traditionnel «  SSDT », peut-être que vous connaissez déjà cet outil, « SQL Server Data Tools », qui vous permet d’intégrer des scripts, de création de table, de procédure stockée, de différents objets et de faire un échange entre une base de données « SQL Server » et un projet « Visual Studio », ce qui est très pratique pour gérer votre script « SQL Server » dans un gestionnaire de code source comme « Git » ou « Team Foundation Server ». Bon, ça c’est traditionnel, ça fait quand même longtemps que ça existe. Par contre, vous avez maintenant « Ready Roll », donc qui est un « add-on », si vous voulez, qui est intégré dans « Visual studio Entreprise » et qui va vous permettre d’avoir une stratégie de migration basée sur des fichiers d’intégration continue ou de migration, comme vous le voyez ici, pour automatiser et rendre beaucoup plus rigoureuse votre intégration de « SQL Server », en parallèle avec vos modifications de fichiers sources sur votre application client. Je vous montre comment ça marche. Je vais créer un projet que je vais appeler, bon, ma base de données, je vais l’appeler « coco », par exemple. Ce qui va me créer un projet avec des extensions pour « Ready Roll ». Vous voyez, j’ai ici mon projet qui contient déjà des répertoires prédéfinis. J’ai l’extension « Ready Roll » qui est ouverte et qui me dit : il faudrait bien peut-être que tu te connectes à « SQL Server », ce qu’on va faire. Donc, il va falloir que je me connecte ici dans « SQL Server ». Je vais aller sur mon « Management Studio ». Donc j’ai créé un « login » qui s’appelle « Rudi » pour pouvoir me connecter. C’est « SQL Server 2014 » sur ma machine. Je vais créer ici une nouvelle base de données que je vais appeler « coco » et ce sera ce qui simule ma base de données de production. Voilà, très simple. Je reviens maintenant dans « Visual Studio », bien sûr. Je vais me connecter. Et cette option de connexion sera intégrée dans les propriétés de mon projet. Je vais dire, ici je l’avais déjà fait, je me connecte à ma machine, à mon serveur, j’ai changé ici, je ne veux pas me connecter en « sa ». Ce n'est pas terrible en termes de performance. Je mets mon mot de passe et ici, je donne ma base de données « coco ». Je teste la connexion, ce n'est pas mal, et je dis : « voilà la base de données qui sera la base de données de mon projet 'Ready Roll' ». Je peux voir ici les paramètres du projet d’ailleurs. Voyez qu’il y a des choses spécifiques à « Ready Roll », et certaines ne sont disponibles que dans l’édition Professionnelle. Les outils de cette société qui s’appelle « Red Gate » qui fabrique des outils pour « SQL Server », ces trois outils qui ont été intégrés dans « Visual Studio » sont intégrés dans une édition « Core », qui n’a pas toutes les fonctionnalités des éditions professionnelles, mais ça vous suffit amplement pour pouvoir travailler. J’indique ma plateforme cible. C’est bien « SQL Server 2014 ». J’ai rien de particulier ici à indiquer d’autre. Je reviens ici sur « Ready Roll ». J’ai créé mon projet. Je me suis connecté à ma base de données. Là je vais juste le refaire pour que ça soit vraiment pris en compte. OK. Et puis je peux importer une base de données déjà existante avec déjà ses tables et ses objets. Mais ce que je vais vous montrer, c’est plutôt la création de script de migration. « Ready Roll » est un outil qui se base, non pas sur un état de la base, c'est-à-dire que vous créez une table et puis ensuite « Ready Roll » va synchroniser la table avec la base de données. Mais c’est basé au départ sur l’idée de script de migration ou de création d’objet. J’ai ici des scripts de pré-déploiement et de post-déploiement. Par exemple, le pré-déploiement, c’est assez simple à comprendre. C’est : on crée la base de données si elle n’existe pas. Pré-déploiement, on pourrait finaliser des choses, là il y a rien, mais lorsque je vais créer un script de migration, je vais dire : qu’est-ce que je fais lors de chaque migration. Je fais un « clic-droit », je dis : « ajouter un script ». Automatiquement « Ready Roll » va le numéroter, donner la date, ici, et m’ajouter cette petite fenêtre pour me dire : est-ce que tu veux déployer le contenu du script ou non ? Voyez qu’il y a un « GUID » qui a été ajouté ici, qui permet à « Ready Roll » d’identifier le script. Ensuite, je vais dire par exemple que je « crée une table ». Et vous voyez que lorsque je saisis, je reviens, il y a ici « SQL Prompt core edition » qui est l’autre ajout de « Red Gate » dans « Visual Studio ». C’est un outil d’aide à la saisie, d'« intellisense » particulier pour les scripts sql et pour « SQL Server ». Donc vous avez un « column picker » sur un « select » pour pouvoir cocher les différentes colonnes que vous voulez obtenir, etc. C’est très utile également. Je vais créer une table que je vais appeler « Ma table 1 ». C’est pas très original, je vous l’accorde. Je vais faire une colonne, évidemment. Je vais l’indenter, je vais essayer d’être propre. OK, je sauvegarde. Et maintenant, je peux dire : tu déploies le projet ou non. Je vais déployer ce projet. Ça va créer la table, bien entendu, dans ma base de données, et ça va marquer ce script de migration comme déployé. Ce qui va se passer en fait, c’est que dans la base de données, on va le voir maintenant, je vais rafraîchir ici, je vais actualiser, et je vais avoir dans mes tables « Ma table 1 » qui a été créée, mais j’ai aussi une table de journal de migration. Je vais juste jeter un coup d’œil à l’intérieur. Et je vais avoir ici le « checksum » du script, le « migration id » qui correspond donc à mon script ici. Ça commence par « ccd5 », etc., et on peut vérifier que c’est la même chose, « ccd5 ». Et donc on a toutes les informations pour dire à quel moment ça a été déployé. J’ai un suivi de mes différents déploiements. Si je fais une table qui ne vient pas des scripts de migration, donc je vais faire « Ma table 2 », bien sûr. On peut faire la même chose. Voilà, j’ai créé une table qui ne vient pas du « Ready Roll ». Je vais pouvoir synchroniser « Ready Roll » ensuite, de façon à ce qu’il prenne en compte cette modification. Je vais aller dans « Ready Roll », je vais regarder ce qui est « pending » ici. Il va y avoir une analyse entre la base de données et mes scripts. Si j’ai des scripts de migration, je vais avoir des informations disant : tu n’as toujours pas créé cette table, par exemple. Mais par contre, je vais avoir l’information que dans ma base de données, il y a une table qui n’appartient pas au projet, et je vais pouvoir l’ajouter au projet. Entre parenthèses, ce qui s’est passé aussi, c’est que si je fais un petit rafraîchissement ici, je vais avoir une base de données « shadow » qui a été créée, qui va permettre à « Ready Roll » de faire la comparaison entre une base de données de déploiement, si vous voulez temporaire, et puis la base de données finale. Je reviens sur mon projet. Je vais dire : « ok, j’importe ». Ce qui va créer ici un script de déploiement, avec la création de la table qui vient de la base de données, et ce script est marqué comme déjà déployé. Vous pourriez aussi faire des scripts de migration, nouveaux, et s’il correspond à des choses qui existent déjà dans la base, eh bien il est important de les marquer déjà comme déployés, de façon à ce que « Ready Roll » ne fasse pas une deuxième fois le travail. Mais chaque fois que j’ai un script de migration, lorsque je l’ai déployé, il est marqué dans la base de données comme étant déployé. Ça ne va jamais se déployer plusieurs fois. Grâce à « Ready Roll », vous pouvez suivre l’évolution de la base, comme vous suivez l’évolution de votre code. Donc c’est un outil intéressant pour industrialiser vos mises à jour de bases de données.

Visual Studio 2017 : Les nouveautés

Découvrez les fonctionnalités et les améliorations de l'environnement de développement Visual Studio 2017. Observez l’optimisation des performances, l’intégration de Docker, etc.

1h04 (15 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Visual Studio Visual Studio 2017
Spécial abonnés
Date de parution :11 avr. 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !