Kurz: Návrh relační databáze ve službě Azure SQL Database pomocí nástroje Azure Data Studio (ADS)

Platí pro:Azure SQL Database

Azure SQL Database je relační databáze jako služba (DBaaS) v Microsoft Cloudu (Azure). V tomto kurzu se naučíte používat Azure Portal a Azure Data Studio (ADS) k:

  • Připojení do databáze pomocí nástroje Azure Data Studio
  • Vytváření tabulek pomocí nástroje Azure Data Studio
  • Hromadně načítat data pomocí BCP
  • Dotazování dat pomocí nástroje Azure Data Studio

Poznámka:

Pro účely tohoto kurzu používáme Službu Azure SQL Database. Můžete také použít databázi ve fondu v elastickém fondu nebo ve spravované instanci SQL. Informace o připojení ke spravované instanci SQL najdete v těchto rychlých startech ke službě SQL Managed Instance: Rychlý start: Konfigurace virtuálního počítače Azure pro připojení ke spravované instanci Azure SQL a rychlý start: Konfigurace připojení typu point-to-site ke spravované instanci Azure SQL z místního prostředí.

Požadavky

K dokončení tohoto kurzu se ujistěte, že jste nainstalovali:

Přihlaste se k portálu Azure Portal.

Přihlaste se k portálu Azure.

Vytvoření pravidla brány firewall protokolu IP na úrovni serveru

Azure SQL Database vytvoří bránu firewall protokolu IP na úrovni serveru. Tato brána firewall brání externím aplikacím a nástrojům v připojení k serveru a jakékoli databáze na serveru, pokud pravidlo brány firewall neumožňuje jejich IP adresu prostřednictvím brány firewall. Pokud chcete povolit externí připojení k databázi, musíte nejprve přidat pravidlo brány firewall protokolu IP pro vaši IP adresu (nebo rozsah IP adres). Následujícím postupem vytvoříte pravidlo brány firewall protokolu IP na úrovni serveru.

Důležité

Azure SQL Database používá ke komunikaci port 1433. Pokud se pokoušíte připojit k této službě z podnikové sítě, nemusí brána firewall vaší sítě povolit odchozí provoz přes port 1433. Pokud ano, nemůžete se k databázi připojit, pokud správce neotevře port 1433.

  1. Po dokončení nasazení vyberte databáze SQL z nabídky webu Azure Portal nebo vyhledejte a vyberte databáze SQL z libovolné stránky.

  2. Vyberte databáziDatabase na stránce databáze SQL. Otevře se stránka přehledu pro vaši databázi s plně kvalifikovaným názvem serveru (například contosodatabaseserver01.database.windows.net) a poskytuje možnosti pro další konfiguraci.

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

  3. Zkopírujte tento plně kvalifikovaný název serveru pro připojení k serveru a databázím z aplikace SQL Server Management Studio.

  4. V části Nastavení vyberte Sítě. Zvolte kartu Veřejný přístup a potom v části Přístup k veřejné síti vyberte Vybrané sítě. Zobrazí se část Pravidla brány firewall.

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

  5. Na panelu nástrojů vyberte Přidat protokol IPv4 klienta a přidejte aktuální IP adresu do nového pravidla brány firewall protokolu IP. Pravidlo brány firewall protokolu IP může otevřít port 1433 pro jednu IP adresu nebo rozsah IP adres.

  6. Zvolte Uložit. Vytvoří se pravidlo brány firewall protokolu IP na úrovni serveru pro vaši aktuální IP adresu, která otevírá port 1433 na serveru.

  7. Vyberte OK a pak zavřete stránku nastavení brány firewall.

Vaše IP adresa teď může projít bránou firewall protokolu IP. K databázi se teď můžete připojit pomocí aplikace SQL Server Management Studio nebo jiného nástroje podle vašeho výběru. Nezapomeňte použít účet správce serveru, který jste vytvořili dříve.

Důležité

Ve výchozím nastavení je přístup přes bránu firewall protokolu IP služby SQL Database povolený pro všechny služby Azure. Výběrem možnosti VYPNUTO na této stránce zakážete všechny služby Azure.

Připojte se k databázi.

K navázání připojení k databázi použijte Azure Data Studio .

  1. Otevřete Azure Data Studio.

  2. V nové Připojení ion z Průzkumník objektů vytvořit nové připojení a zadat následující informace. Ostatní možnosti ponechte jako výchozí.

    Nastavení Navrhovaná hodnota Popis
    Typ připojení: Microsoft SQL Server Tato hodnota je povinná.
    Název serveru Plně kvalifikovaný název logického serveru Azure SQL Database Například your_logical_azure_sql_server.database.windows.net.
    Překlep ověřování Ověřování serveru SQL Server K zadání uživatelského jména a hesla použijte ověřování SQL Serveru.
    Ověřování Microsoft Entra Pokud se chcete připojit pomocí Microsoft Entra ID, pokud jste správcem serveru Microsoft Entra, zvolte Microsoft Entra ID – Universal s podporou vícefaktorového ověřování. Další informace najdete v tématu Konfigurace a správa ověřování Microsoft Entra pro Azure SQL.
    Přihlášení Účet správce serveru Jedná se o účet, který jste zadali při vytváření serveru.
    Heslo Heslo pro účet správce serveru Heslo, které jste zadali při vytváření serveru.

    Screenshot of connection dialog box in ADS.

  3. Vyberte Připojit. Okno Průzkumník objektů se otevře v ADS.

  4. V Průzkumník objektů rozbalte databáze a potom rozbalte databáziDatabase, abyste zobrazili objekty v ukázkové databázi.

  5. V Průzkumník objektů klikněte pravým tlačítkem na databáziDatabase a vyberte Nový dotaz. Otevře se prázdné okno dotazu připojené k vaší databázi.

Vytváření tabulek v databázi

Vytvořte schéma databáze se čtyřmi tabulkami, které modeluje systém správy studentů pro univerzity pomocí Návrháře tabulek v Azure Data Studiu:

  • Person
  • Course
  • Student
  • Credit

Následující diagram znázorňuje, jak spolu tyto tabulky vzájemně souvisejí. Některé z těchto tabulek odkazují na sloupce v jiných tabulkách. Například Student tabulka odkazuje na PersonId sloupec Person tabulky. Prohlédněte si diagram, abyste pochopili, jak spolu tabulky v tomto kurzu souvisejí. Podrobné informace o vytváření efektivních normalizovaných databázových tabulek najdete v tématu Návrh normalizované databáze. Informace o výběru datových typů najdete v tématu Datové typy. Ve výchozím nastavení se tabulky vytvářejí ve výchozím dbo schématu, což znamená, že název tabulky bude dbo.Persondvoudílný, například.

Screenshot of Table relationships.

  1. V Průzkumník objektů vyberte yourDatabase, která rozbalí rozevírací nabídku všech procesů uložených v této databázi, klikněte pravým tlačítkem myši na složku Tabulky a vyberte Možnost Nová tabulka. Otevře se prázdný návrhář tabulky, který je připojený k vaší databázi.

  2. Pomocí rozhraní Návrháře tabulek vytvořte tyto čtyři tabulky v databázi. Další informace o vytváření tabulek pomocí Návrháře tabulek najdete v dokumentaci Návrháře tabulek:

    • Tabulka osob

      Screenshot of Person Table in Table Designer.

      Nezapomeňte nakonfigurovat nastavení primárního klíče pro tabulku osob , jak je znázorněno níže:

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

    • Tabulka studentů

      Screenshot of Student table in Table Designer.

      Nezapomeňte nakonfigurovat nastavení primárního klíče pro tabulku studentů , jak je znázorněno níže: Screenshot of Student table in Table Designer showing Primary Key settings.

      Nezapomeňte nakonfigurovat nastavení cizího klíče pro tabulku studentů , jak je znázorněno níže: Screenshot Student table in Table Designer showing Foreign Key settings.

    • Tabulka kurzů

      Screenshot of Course Table in Table Designer.

      Nezapomeňte nakonfigurovat nastavení primárního klíče pro tabulku kurzů , jak je znázorněno níže: Screenshot of Course table in Table Designer showing Primary Key settings.

    • Tabulka kreditů

      Screenshot of Credit Table in Table Designer.

      Nezapomeňte nakonfigurovat nastavení cizího klíče pro tabulku kreditů , jak je znázorněno níže: Screenshot of Credit Table in Table Designer showing Foreign Key settings.

      Nezapomeňte nakonfigurovat nastavení omezení kontroly pro tabulku kreditů , jak je znázorněno níže: Screenshot of Credit Table in Table Designer showing Check Constraint settings.

    Pokud raději používáte T-SQL k vytvoření čtyř nových tabulek, tady je T-SQL, který se má spustit v novém okně dotazu.

    -- 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. Rozbalte uzel Tabulky v databáziDatabase v Průzkumník objektů zobrazte čtyři nové tabulky, které jste vytvořili.

    Screenshot of created tables in ADS.

Načtení dat do tabulek

  1. Vytvořte složku s názvem sampleData v místní složce stažené pracovní stanice pro ukládání ukázkových dat pro vaši databázi. Například c:\Users\<your user name>\Downloads.

  2. Klikněte pravým tlačítkem myši na následující odkazy a uložte je do složky sampleData .

  3. Otevřete nové okno příkazového řádku windows a přejděte do složky sampleData . Například cd c:\Users\<your user name>\Downloads.

  4. Spuštěním následujících bcp příkazů vložte ukázková data do tabulek a nahraďte hodnoty pro server, databázi, uživatele a heslo hodnotami pro vaše prostředí.

    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 ","
    

Teď jste načetli ukázková data do tabulek, které jste předtím vytvořili.

Zadávání dotazů na data

Spuštěním následujících dotazů T-SQL načtěte informace z databázových tabulek.

Tento první dotaz spojí všechny čtyři tabulky a najde studenty, které učí "Dominick Pope", kteří mají známku vyšší než 75 %. V okně dotazu spusťte následující dotaz T-SQL:

-- 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;

Tento dotaz spojí všechny čtyři tabulky a najde kurzy, ve kterých se kdy zaregistroval Noe Coleman. V okně dotazu spusťte následující dotaz T-SQL:

-- 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';

Tip

Další informace o psaní dotazů SQL najdete v kurzu: Psaní příkazů jazyka Transact-SQL.

Tip

Jste připravení začít vyvíjet aplikaci .NET? V tomto bezplatném modulu Learn se dozvíte, jak vyvíjet a konfigurovat ASP.NET aplikaci, která dotazuje službu Azure SQL Database, včetně vytvoření jednoduché databáze.

Další krok

V následujícím kurzu se dozvíte, jak navrhnout databázi pomocí sady Visual Studio a jazyka C#.