Dans ce chapitre, je vais vous aider à créer une deuxième base de données dans SSMS et à la remplir comme avec la première. Après cela, vous pourrez terminer de préparer votre base de données pour les requêtes.
Créez une nouvelle base de données
Pour créer une nouvelle base de données dans SSMS, faites un clic droit sur le dossier Bases de données dans l’Object Explorer et choisissez New Database. Cela fait apparaître la fenêtre New Database. Nommez votre nouvelle base de données et cliquez sur OK. Je nomme la mienne MesRecettes2.
Vous devriez maintenant voir une nouvelle base de données dans l’Object Explorer. Elle ne possède pas encore de tables, alors ajoutons-en quelques-unes.
Ajoutez des tables
Vous pouvez ajouter des tables à une nouvelle base de données de plusieurs façons. Vous pouvez écrire des scripts SQL. Vous pouvez aussi faire un clic droit sur le dossier Tables et sélectionner ensuite New > Table. Cela fait apparaître la fenêtre Create a Table où vous pouvez ajouter toutes les colonnes nécessaires à votre table.
Vous pouvez utiliser cette méthode, mais je vais aussi vous montrer une troisième option, qui consiste à créer les tables directement dans le schéma de base de données.
Pour ce faire, vous devez d’abord créer un schéma vide. Faites un clic droit sur Database Diagrams, sélectionnez New Database Diagram et installez la fonctionnalité (si nécessaire). La fenêtre Add Table s’affiche, mais il n’y a aucune table à ajouter, alors cliquez simplement sur Close.
Vous avez maintenant un schéma de base de données vide. Pour ajouter une nouvelle table, faites un clic droit sur le fond blanc du schéma vide et choisissez New Table. Dans la boîte de dialogue Choose Name, saisissez le nom de votre nouvelle table.
Exercice : complétez les tables
Vous avez maintenant une table en mode création qui s’affiche sur votre schéma. Ajoutez les colonnes de cette table pour qu’elle corresponde à votre modèle de la première partie (elle doit correspondre à son équivalent dans la base de données que vous avez générée à l’aide des migrations code first).
Après avoir fini de créer la table Recette, créez les autres tables de votre modèle avec le même procédé. Je vous montrerai ensuite comment ajouter les relations.
Ajoutez des relations
Actuellement, toutes mes tables ont été créées et ajoutées au schéma. Cependant, je n’ai pas encore configuré les relations. C’est pourquoi elles ne sont pas liées.
La prochaine étape consiste à définir les relations entre les tables. Comme j’ai conçu le modèle, je connais comment ces tables doivent être liées. Quant aux colonnes de clés étrangères, elles sont facilement identifiables par leur nom. Par exemple, j’ai deux clés étrangères dans la table Recette : TypeAlimentId et OrigineAlimentId. Établissons des relations entre les tables concernées.
Il est facile d’ajouter une relation dans un schéma. Cliquez sur la clé primaire de la table OrigineAliment tout en la faisant glisser vers la clé étrangère correspondante dans la table Recette. Une ligne en pointillé suit votre curseur lorsque vous vous déplacez entre les tables, et lorsque vous relâchez le bouton de la souris, les fenêtres de définition des relations apparaissent.
Si la clé étrangère est bien définie, cliquez sur OK. La première fenêtre disparaît, laissant place à la suivante :
Si tout semble correct, cliquez sur OK. Une relation est maintenant définie entre ces deux tables dans le schéma.
Vous pouvez maintenant refaire le processus pour les autres relations dans la base de données.
Exercice : complétez les relations
Vous savez maintenant comment ajouter des relations entre les tables en utilisant des schémas de base de données dans SSMS. Ajoutez les relations avec les autres tables, puis enregistrez votre schéma.
Exercice : remplissez votre base de données
Pour vérifier si vous avez correctement créé votre base de données, vous devez importer des données. Vous vous souvenez des fichiers .csv que vous avez téléchargés depuis le dépôt GitHub de ce cours dans le chapitre 4 de la première partie ? Eh bien, vous pouvez les utiliser à nouveau ici en apportant une petite modification. Ouvrez chaque fichier et supprimez la première ligne, celle qui contient les noms des colonnes. Ensuite, ouvrez une nouvelle fenêtre de requête SQL dans SSMS et vérifiez que votre nouvelle base de données apparaît dans la liste déroulante sur le côté gauche de la barre d’outils.
Pour chaque fichier .csv et sa table correspondante dans votre base de données, effectuez une insertion groupée pour importer les données CSV. Importez d’abord les trois tables de consultation (TypeAliment, OrigineAliment et UniteDeMesure), puis Recette et Ingrédient, et enfin IngredientRecette.
INSERTION GROUPÉE DE TypesAliment
FROM '[chemin du fichier]\TypesAliment.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
GO
Lorsque vous aurez terminé cette tâche, vous serez prêt à découvrir comment utiliser l’intégration database first pour importer votre base de données comme modèle de données dans votre application MVC.
En résumé
Vous avez une toute nouvelle base de données ! Elle est pratiquement identique à celle que vous avez créée dans la première partie du cours, mais vous l’avez entièrement créée dans SSMS. Voici les notions abordées dans ce chapitre :
En plus d’utiliser SQL ou C# avec les migrations code first, vous avez appris une autre méthode pour créer des bases de données relationnelles : SSMS.
Vous avez appris à concevoir et à créer les tables et à définir les relations avec l’outil schéma de base de données.
Enfin, vous avez appris à importer les données provenant de fichiers .csv dans votre base de données à l’aide d’insertions SQL groupées dans l’IDE SSMS.
Dans le chapitre suivant, nous allons utiliser cette nouvelle base de données dans un nouveau projet MVC pour construire un modèle de données et un contexte de base de données. Ceci se fait directement à partir de cette base de données elle-même, sans écrire une seule ligne de code.