Tutoriel : Concevoir une base de données relationnelle dans Azure SQL Database à l’aide d’Azure Data Studio (ADS)

S’applique à Azure SQL Database

Azure SQL Database est une solution DBaaS relationnelle dans Microsoft Cloud (Azure). Ce didacticiel vous montre comment utiliser le portail Azure et Azure Data Studio (ADS) pour :

  • Se connecter à la base de données avec Azure Data Studio
  • Créer des tables avec Azure Data Studio
  • Charger en masse des données avec BCP
  • Interroger les données avec Azure Data Studio

Remarque

Pour les besoins de ce tutoriel, nous utilisons Azure SQL Database. Vous pouvez également utiliser une base de données mise en pool élastique ou une instance managée SQL. Pour la connexion à une instance managée SQL, consultez ces guides de démarrage rapide des instances managées SQL : Démarrage rapide : Configurer la machine virtuelle Azure pour qu’elle se connecte à une instance managée Azure SQL et Démarrage rapide : Configurer une connexion point à site à une instance managée Azure SQL à partir d’un emplacement local.

Prérequis

Pour suivre ce tutoriel, vérifiez que les éléments suivants sont installés :

Connectez-vous au portail Azure.

Connectez-vous au portail Azure.

Créer une règle de pare-feu IP au niveau du serveur

Azure SQL Database crée un pare-feu IP au niveau du serveur. Ce pare-feu empêche les applications et outils externes de se connecter au serveur et à toutes les bases de données sur ce serveur, sauf si une règle de pare-feu autorise leur adresse IP à traverser le pare-feu. Pour activer la connectivité externe à votre base de données, vous devez d’abord ajouter une règle de pare-feu IP pour votre adresse IP (ou plage d’adresses IP). Suivez ces étapes pour créer une règle de pare-feu IP au niveau du serveur.

Important

Azure SQL Database communique par le biais du port 1433. Si vous essayez de vous connecter à ce service à partir d’un réseau d’entreprise, le trafic sortant sur le port 1433 peut ne pas être autorisé par le pare-feu de votre réseau. Dans ce cas, vous ne pouvez pas vous connecter à votre base de données, sauf si votre administrateur ouvre le port 1433.

  1. Une fois le déploiement terminé, sélectionnez Bases de données SQL dans le menu Portail Azure ou recherchez et sélectionnez Bases de données SQL à partir de n’importe quelle page.

  2. Sélectionnez YourDatabase dans la page Bases de données SQL. La page d’aperçu de votre base de données s’ouvre. Elle affiche le Nom du serveur complet (par exemple contosodatabaseserver01.database.windows.net) et fournit des options pour poursuivre la configuration.

    Screenshot of the Azure portal, database overview page with the server name highlighted.

  3. Copiez le nom complet du serveur pour vous connecter à votre serveur et aux bases de données à partir de SQL Server Management Studio.

  4. Sous Paramètres, sélectionnez Mise en réseau. Choisissez l’onglet Accès public, puis sélectionnez Réseaux sélectionnés sous Accès réseau public pour afficher la section Règles de pare-feu.

    Screenshot of the Azure portal, networking page, showing where to set the server-level IP firewall rule.

  5. Dans la barre d’outils, sélectionnez Ajouter votre client IPv4 afin d’ajouter votre adresse IP actuelle à une nouvelle règle de pare-feu IP. Une règle de pare-feu IP peut ouvrir le port 1433 pour une seule adresse IP ou une plage d’adresses IP.

  6. Sélectionnez Enregistrer. Une règle de pare-feu IP au niveau du serveur est créée pour votre adresse IP actuelle et ouvre le port 1433 sur le serveur.

  7. Sélectionnez OK, puis fermez la page Paramètres de pare-feu.

Votre adresse IP peut désormais traverser le pare-feu IP. Vous pouvez maintenant vous connecter à votre base de données à l’aide de SQL Server Management Studio ou tout autre outil de votre choix. Veillez à utiliser le compte d’administrateur de serveur que vous avez créé précédemment.

Important

Par défaut, l’accès par le biais du pare-feu IP SQL Database est activé pour tous les services Azure. Sélectionnez INACTIF dans cette page pour le désactiver pour tous les services Azure.

Se connecter à la base de données

Utilisez Azure Data Studio pour établir une connexion à votre base de données.

  1. Ouvrez Azure Data Studio.

  2. Dans Nouvelle connexion, à partir de l’Explorateur d’objets, créez une connexion et entrez les informations suivantes. Conservez les valeurs par défaut des autres options.

    Paramètre Valeur suggérée Description
    Type de connexion Microsoft SQL Server Cette valeur est requise.
    Nom du serveur Le nom complet de votre serveur logique de base de données Azure SQL Par exemple : your_logical_azure_sql_server.database.windows.net.
    Type d’authentification Authentification SQL Server Utilisez l’authentification SQL Server pour entrez un nom d’utilisateur et un mot de passe.
    Authentification Microsoft Entra Pour vous connecter à l’aide de Microsoft Entra ID, si vous êtes l’administrateur du serveur Microsoft Entra, choisissez Microsoft Entra ID : Universal avec prise en charge de l’authentification multifacteur. Pour plus d’informations, consultez Configurer et gérer l’authentification Microsoft Entra avec Azure SQL.
    Connexion Compte d’administrateur de serveur Le compte que vous avez spécifié lorsque vous avez créé le serveur.
    Mot de passe Mot de passe de votre compte d’administrateur de serveur Il s’agit du mot de passe que vous avez spécifié quand vous avez créé le serveur.

    Screenshot of connection dialog box in ADS.

  3. Sélectionnez Se connecter. La fenêtre Explorateur d’objets s’ouvre dans ADS.

  4. Dans l’Explorateur d’objets, développez Bases de données, puis yourDatabase pour afficher les objets dans l’exemple de base de données.

  5. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur yourDatabase et sélectionnez Nouvelle requête. Une fenêtre de requête vide connectée à votre base de données s’ouvre.

Créer des tables dans votre base de données

Créez un schéma de la base de données avec quatre tables qui modélisent un système de gestion des étudiants pour les universités à l’aide du Concepteur de tables dans Azure Data Studio :

  • Person
  • Course
  • Student
  • Credit

Le diagramme suivant montre comment ces tables sont liées entre elles. Certaines de ces tables référencent des colonnes d’autres tables. Par exemple, la table Student référence la colonne PersonId de la table Person. Étudiez le diagramme pour comprendre comment les tables présentées dans ce didacticiel sont liées entre elles. Pour obtenir une vue d’ensemble de la création de tables de base de données normalisées efficaces, consultez Conception d’une base de données normalisée. Pour plus d’informations sur le choix des types de données, consultez Types de données. Par défaut, les tables sont créées dans le schéma par défaut dbo, ce qui signifie que le nom en deux parties d’une table sera dbo.Person, par exemple.

Screenshot of Table relationships.

  1. Dans l’Explorateur d’objets, sélectionnez yourDatabase pour développer le menu déroulant de tous les processus stockés dans cette base de données, cliquez avec le bouton droit sur le dossier Tables, puis sélectionnez Nouvelle table. Un Concepteur de tables vide connecté à votre base de données s’ouvre.

  2. Utilisez l’interface Concepteur de tables pour créer ces quatre tables dans votre base de données. Pour en savoir plus sur la création de tables à l’aide du Concepteur de tables, consultez la documentation relative au Concepteur de tables :

    • Table Person

      Screenshot of Person Table in Table Designer.

      Configurez les paramètres de clé primaire pour la table Person comme indiqué ci-dessous :

      Screenshot of Person table in Table Designer showing the Primary Key settings.

    • Table Student

      Screenshot of Student table in Table Designer.

      Veillez à configurer les paramètres de clé primaire pour la table Student, comme indiqué ci-dessous : Screenshot of Student table in Table Designer showing Primary Key settings.

      Veillez à configurer les paramètres de clé étrangère pour la table Student, comme indiqué ci-dessous : Screenshot Student table in Table Designer showing Foreign Key settings.

    • Table Course

      Screenshot of Course Table in Table Designer.

      Veillez à configurer les paramètres de clé primaire pour la table Course, comme indiqué ci-dessous : Screenshot of Course table in Table Designer showing Primary Key settings.

    • Table Crédit

      Screenshot of Credit Table in Table Designer.

      Veillez à configurer les paramètres de clé étrangère pour la table Credit, comme indiqué ci-dessous : Screenshot of Credit Table in Table Designer showing Foreign Key settings.

      Veillez à configurer les paramètres de contrainte de validation pour la table Credit, comme indiqué ci-dessous : Screenshot of Credit Table in Table Designer showing Check Constraint settings.

    Si vous préférez utiliser T-SQL pour créer les quatre nouvelles tables, voici le T-SQL à exécuter dans une nouvelle fenêtre de requête.

    -- Create Person table
    CREATE TABLE Person
    (
        PersonId INT IDENTITY PRIMARY KEY,
        FirstName NVARCHAR(128) NOT NULL,
        MiddelInitial NVARCHAR(10),
        LastName NVARCHAR(128) NOT NULL,
        DateOfBirth DATE NOT NULL
    )
    
    -- Create Student table
    CREATE TABLE Student
    (
        StudentId INT IDENTITY PRIMARY KEY,
        PersonId INT REFERENCES Person (PersonId),
        Email NVARCHAR(256)
    )
    
    -- Create Course table
    CREATE TABLE Course
    (
        CourseId INT IDENTITY PRIMARY KEY,
        Name NVARCHAR(50) NOT NULL,
        Teacher NVARCHAR(256) NOT NULL
    )
    
    -- Create Credit table
    CREATE TABLE Credit
    (
        StudentId INT REFERENCES Student (StudentId),
        CourseId INT REFERENCES Course (CourseId),
        Grade DECIMAL(5,2) CHECK (Grade <= 100.00),
        Attempt TINYINT,
        CONSTRAINT [UQ_studentgrades] UNIQUE CLUSTERED
        (
            StudentId, CourseId, Grade, Attempt
        )
    )
    
  3. Développez le nœud Tables sous yourDatabase dans l’Explorateur d’objets pour afficher les quatre tables que vous avez créées.

    Screenshot of created tables in ADS.

Charger des données dans les tables

  1. Créez un dossier nommé sampleData dans le dossier Téléchargements de votre station de travail locale pour y stocker les exemples de données pour votre base de données. Par exemple : c:\Users\<your user name>\Downloads.

  2. Cliquez avec le bouton droit sur les liens suivants et enregistrez-les dans le dossier sampleData.

  3. Ouvrez une nouvelle fenêtre d’invite de commandes Windows et accédez au dossier sampleData. Par exemple : cd c:\Users\<your user name>\Downloads.

  4. Exécutez les bcp commandes suivantes pour insérer des exemples de données dans les tables, en remplaçant les valeurs de server, database, user et password par les valeurs correspondant à votre environnement.

    bcp Course in SampleCourseData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t ","
    bcp Person in SamplePersonData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t ","
    bcp Student in SampleStudentData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t ","
    bcp Credit in SampleCreditData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t ","
    

Vous avez maintenant chargé des exemples de données dans les tables que vous avez créées précédemment.

Interroger des données

Exécutez les requêtes T-SQL suivantes pour récupérer des informations à partir des tables de base de données.

Cette première requête réunit les quatre tables pour rechercher tous les étudiants inscrits au cours de « Dominick Pope » ayant une note supérieure à 75 %. Dans la fenêtre de requête, exécutez la requête T-SQL suivante :

-- Find the students taught by Dominick Pope who have a grade higher than 75%
SELECT  person.FirstName, person.LastName, course.Name, credit.Grade
FROM  Person AS person
    INNER JOIN Student AS student ON person.PersonId = student.PersonId
    INNER JOIN Credit AS credit ON student.StudentId = credit.StudentId
    INNER JOIN Course AS course ON credit.CourseId = course.courseId
WHERE course.Teacher = 'Dominick Pope'
    AND Grade > 75;

Cette requête réunit les quatre tables et recherche les cours que « Noe Coleman » a déjà suivis. Dans la fenêtre de requête, exécutez la requête T-SQL suivante :

-- Find all the courses in which Noe Coleman has ever enrolled
SELECT  course.Name, course.Teacher, credit.Grade
FROM  Course AS course
    INNER JOIN Credit AS credit ON credit.CourseId = course.CourseId
    INNER JOIN Student AS student ON student.StudentId = credit.StudentId
    INNER JOIN Person AS person ON person.PersonId = student.PersonId
WHERE person.FirstName = 'Noe'
    AND person.LastName = 'Coleman';

Conseil

Pour en savoir plus sur l’écriture de requêtes T-SQL, consultez Didacticiel : écrire des instructions Transact-SQL.

Conseil

Prêt à commencer à développer une application .NET ? Ce module Learn gratuit explique comment Développer et configurer une application ASP.Net qui interroge une base de données Azure SQL Database, ce qui comprend la création d’une base de données simple.

Étape suivante

Passez au didacticiel suivant pour en savoir plus sur la conception d’une base de données à l’aide de Visual Studio et C#.