Créer une base de données et ajouter des tables dans des applications .NET Framework à l’aide de Visual Studio
Remarque
Les jeux de données et les classes associées sont des technologies .NET Framework héritées qui datent du début des années 2000. Elles permettent aux applications d’utiliser des données en mémoire pendant que les applications sont déconnectées de la base de données. Ces technologies sont particulièrement utiles aux applications qui permettent aux utilisateurs de modifier des données, et de rendre ces changements persistants dans la base de données. Même si les jeux de données sont une technologie très efficace, nous vous recommandons d’utiliser Entity Framework Core pour les nouvelles applications .NET. Entity Framework offre un moyen plus naturel d’utiliser des données tabulaires en tant que modèles objet. De plus, il présente une interface de programmation plus simple.
Vous pouvez utiliser Visual Studio pour créer et mettre à jour un fichier de base de données local dans la base de données locale SQL Server Express. Vous pouvez également créer une base de données en exécutant des instructions Transact-SQL dans la fenêtre d’outils Explorateur d’objets SQL Server dans Visual Studio. Dans cette rubrique, vous allez créer un fichier .mdf
, puis ajouter des tables et des clés à l’aide du Concepteur de tables.
Prérequis
Pour effectuer cette procédure pas à pas, vous devez installer les charges de travail Développement de bureau .NET et Stockage et traitement des données dans Visual Studio. Pour les installer, ouvrez Visual Studio Installer et choisissez Modifier (ou Plus>Modifier) en regard de la version de Visual Studio que vous souhaitez modifier. Consultez Modifier Visual Studio.
Remarque
Les procédures décrites dans cet article s’appliquent uniquement aux projets .NET Framework Windows Forms et non aux projets .NET Core Windows Forms.
Créer un projet et un fichier de base de données local
Créez un projet Application Windows Forms (.NET Framework) et nommez-le SampleDatabaseWalkthrough.
Dans la barre de menus, choisissez Projet>Ajouter un nouvel élément. Si vous voyez une petite boîte de dialogue avec une zone pour un nom de fichier, choisissez Afficher tous les modèles.
Dans la liste des modèles d’élément, faites défiler vers le bas et sélectionnez Base de données basée sur les services.
Nommez la base de données SampleDatabase.mdf, puis sélectionnez Ajouter.
Ajouter une source de données
Si la fenêtre Sources de données n’est pas ouverte, ouvrez-la en appuyant sur Maj+Alt+D ou en sélectionnant Affichage>Autres fenêtres>Sources de données dans la barre de menus.
Dans la fenêtre Sources de données, sélectionnez Ajouter une nouvelle source de données.
L’Assistant Configuration de source de données s’ouvre.
Dans la page Choisir un type de source de données, choisissez Base de données, puis choisissez Suivant.
Dans la page Choisir un modèle de base de données, choisissez Suivant pour accepter la valeur par défaut (Dataset).
Dans la page Choisir votre connexion de données, sélectionnez le fichier SampleDatabase.mdf dans la liste déroulante, puis choisissez Suivant.
Dans la page Enregistrer la chaîne de connexion dans le fichier de configuration de l’application, cliquez sur Suivant.
Dans la page Choisir vos objets de base de données, vous voyez un message indiquant que la base de données ne contient aucun objet. Cliquez sur Terminer.
Attention
Dans une application réelle, vous devez stocker la chaîne de connexion en toute sécurité, comme décrit dans Chaînes de connexion et fichiers de configuration. Pour une meilleure sécurité, utilisez une méthode d’authentification qui ne repose pas sur le stockage d’un mot de passe dans la chaîne de connexion, telle que l’authentification Windows pour une base de données SQL Server locale. Veuillez consulter la section Enregistrer et modifier des chaînes de connexion.
Voir les propriétés de la connexion de données
Vous pouvez voir certaines propriétés du fichier SampleDatabase.mdf en ouvrant la fenêtre Propriétés de la connexion de données :
Sélectionnez Affichage>Explorateur d’objets SQL Server (ou CTRL+\, CTRL+S) pour ouvrir la fenêtre Explorateur d’objets SQL Server. Développez (localdb)\MSSQLLocalDB>Bases de données, puis cliquez avec le bouton droit sur SampleDatabase.mdf (il peut apparaître avec le chemin complet) et sélectionnez Propriétés.
Vous pouvez également sélectionner Affichage>Explorateur de serveurs si cette fenêtre n’est pas déjà ouverte. Ouvrez la fenêtre Propriétés en développant le nœud Connexions de données, en cliquant avec le bouton droit sur SampleDatabase.mdf, puis en sélectionnant Propriétés.
Conseil
Si vous ne pouvez pas développer le nœud Connexions de données ou si la connexion SampleDatabase.mdf n’est pas listée, sélectionnez le bouton Connexion à une base de données dans la barre d’outils de l’Explorateur de serveurs. Dans la boîte de dialogue Ajouter une connexion, vérifiez que Fichier de base de données Microsoft SQL Server est sélectionné sous Source de données, puis accédez au fichier SampleDatabase.mdf et sélectionnez-le. Terminez l’ajout de la connexion en sélectionnant OK.
Pour afficher le chaîne de connexion, vous pouvez ouvrir le fichier App.config dans l’Explorateur de solutions. Vous devez voir une entrée sous l’élément connectionStrings
qui ressemble au code suivant :
<connectionStrings>
<add name="SampleDatabaseWalkthrough.Properties.Settings.SampleDatabaseConnectionString"
connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SampleDatabase.mdf;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
Créer des tables et des clés à l’aide du Concepteur de tables
Dans cette section, vous créerez deux tables, une clé primaire dans chaque table et quelques lignes d’exemples de données. Vous créerez également une clé étrangère pour spécifier comment les enregistrements d’une table correspondent aux enregistrements de l’autre table.
Créer la table Customers
Dans l’Explorateur de serveurs ou l’Explorateur d’objets SQL Server, développez le nœud Connexions de données, puis le nœud SampleDatabase.mdf.
Cliquez avec le bouton droit sur Tables, puis sélectionnez Ajouter une nouvelle table.
Le Concepteur de tables s'ouvre et affiche une grille avec une ligne par défaut, qui représente une seule colonne de la table que vous créez. En ajoutant des lignes à la grille, vous ajoutez des colonnes à la table.
Dans la grille, ajoutez une ligne pour chaque entrée suivante :
Nom de la colonne Type de données Null autorisé CustomerID
nchar(5)
False (désactivé) CompanyName
nvarchar(50)
False (désactivé) ContactName
nvarchar (50)
True (sélectionné) Phone
nvarchar (24)
True (sélectionné) Cliquez avec le bouton droit sur la ligne
CustomerID
, puis sélectionnez Définir la clé primaire.Cliquez avec le bouton droit sur la ligne par défaut (
Id
), puis sélectionnez Supprimer.Nommez la table Customers en mettant à jour la première ligne du volet de script afin qu'elle corresponde à l'exemple suivant :
CREATE TABLE [dbo].[Customers]
Ajoutez une contrainte d’index à la table Customers. Ajoutez une virgule à la fin de la ligne
Phone
, puis ajoutez l’exemple suivant avant la parenthèse fermante :CONSTRAINT [PK_Customers] PRIMARY KEY ([CustomerID])
Un résultat semblable à celui-ci doit s’afficher :
Dans le coin supérieur gauche du Concepteur de tables, sélectionnez Mettre à jour ou appuyez sur Maj+Alt+U.
Dans la boîte de dialogue Aperçu des mises à jour de la base de données, sélectionnez Mettre à jour la base de données.
La table Customers est créée dans le fichier de base de données local.
Créer la table Orders
Ajoutez une table, puis ajoutez une ligne pour chaque entrée dans le tableau suivant :
Nom de la colonne Type de données Null autorisé OrderID
int
False (désactivé) CustomerID
nchar(5)
False (désactivé) OrderDate
datetime
True (sélectionné) OrderQuantity
int
True (sélectionné) Définissez OrderID comme clé primaire, puis supprimez la ligne par défaut.
Nommez la table Orders en mettant à jour la première ligne du volet de script afin qu'elle corresponde à l'exemple suivant :
CREATE TABLE [dbo].[Orders]
Ajoutez une contrainte d’index à la table Customers. Ajoutez une virgule à la fin de la ligne
OrderQuantity
, puis ajoutez l’exemple suivant avant la parenthèse fermante :CONSTRAINT [PK_Orders] PRIMARY KEY ([OrderId])
Dans le coin supérieur gauche du Concepteur de tables, sélectionnez Mettre à jour ou appuyez sur Maj+Alt+U.
Dans la boîte de dialogue Aperçu des mises à jour de la base de données, sélectionnez Mettre à jour la base de données.
La table Orders est créée dans le fichier de base de données local. Si vous développez le nœud Tables dans l’Explorateur de serveurs, vous voyez les deux tables :
Si vous ne les voyez pas, sélectionnez le bouton Actualiser de la barre d’outils.
Créer une clé étrangère
Dans le volet contextuel situé à droite de la grille du Concepteur de tables pour la table Commandes, cliquez avec le bouton droit sur Clés étrangères et sélectionnez Ajouter une nouvelle clé étrangère.
Dans la zone de texte qui apparaît, remplacez le texte ToTable par Customers.
Dans le volet T-SQL, mettez la dernière ligne à jour pour qu’elle corresponde à l’exemple suivant :
CONSTRAINT [FK_Orders_Customers] FOREIGN KEY ([CustomerID]) REFERENCES [Customers]([CustomerID])
Dans le coin supérieur gauche du Concepteur de tables, sélectionnez Mettre à jour (Maj+Alt+U).
Dans la boîte de dialogue Aperçu des mises à jour de la base de données, sélectionnez Mettre à jour la base de données.
La clé étrangère est créée.
Remplir les tables avec des données
Dans l’Explorateur de serveurs ou l’Explorateur d’objets SQL Server, développez le nœud de l’exemple de base de données.
Ouvrez le menu contextuel du nœud Tables, sélectionnez Actualiser, puis développez le nœud Tables.
Ouvrez le menu contextuel de la table Customers, puis sélectionnez Afficher les données de la table ou Voir les données.
Ajoutez les données voulues pour quelques clients.
Vous pouvez spécifier cinq caractères de votre choix comme ID de client, mais choisissez-en au moins un que vous pouvez mémoriser pour l'utiliser ultérieurement dans cette procédure.
Ouvrez le menu contextuel de la table Orders, puis sélectionnez Afficher les données de la table ou Voir les données.
Ajoutez des données pour quelques commandes. Chaque ligne que vous entrez est enregistrée dans la base de données.
Important
Vérifiez que tous les ID de commande et quantités commandées sont des entiers et que chaque ID client correspond à une valeur que vous avez spécifiée dans la colonne CustomerID de la table Customers.
Félicitations ! Vous savez maintenant comment créer des tables, les lier à une clé étrangère et ajouter des données.