Kurz: Návrh relační databáze v Azure SQL Database SSMS

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 web Azure Portal a aplikaci SQL Server Management Studio (SSMS), když chcete:

  • Vytvoření databáze pomocí Azure Portal*
  • Nastavení pravidla brány firewall protokolu IP na úrovni serveru pomocí Azure Portal
  • Připojit se k databázi pomocí SSMS
  • Vytvářet tabulky pomocí SSMS
  • Hromadně načítat data pomocí BCP
  • Dotazování dat pomocí aplikace SSMS

*Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.

Tip

Následující Microsoft Learn vám pomůže naučit se zdarma vyvíjet a konfigurovat aplikaci ASP.NET,která se dotazuje Azure SQL Database , včetně vytvoření jednoduché databáze.

Poznámka

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

Požadavky

Abyste tento kurz dokončili, ujistěte se, že jste nainstalovali:

Přihlášení k webu Azure Portal

Přihlaste se na Azure Portal.

Vytvoření prázdné databáze v Azure SQL Database

Databáze v Azure SQL Database se vytvoří s definovanou sadu výpočetních prostředků a prostředků úložiště. Databáze se vytvoří v rámci skupiny prostředků Azure a spravuje se pomocí logického SQL serveru.

Pokud chcete vytvořit prázdnou databázi, postupujte podle těchto kroků.

  1. V nabídce webu Azure Portal nebo na domovské stránce vyberte Vytvořit prostředek.

  2. Na stránce Nový v části Azure Marketplace vyberte Databases a potom klikněte v části Doporučené na SQL Database.

    Vytvoření prázdné databáze

  3. Vyplňte formulář SQL Database následujícími informacemi, jak je znázorněno na předchozím obrázku:

    Nastavení       Navrhovaná hodnota Popis 
    Název databáze vašedatabáze Platné názvy databází najdete v tématu Identifikátory databáze.
    Předplatné yourSubscription (vašepředpředhádí) Podrobnosti o vašich předplatných najdete v tématu Předplatná.
    Skupina prostředků vašeSkupinaProstředku Platné názvy skupin prostředků najdete v tématu Pravidla a omezení pojmenování.
    Zvolit zdroj Prázdná databáze Určuje, že se má vytvořit prázdná databáze.
  4. Klikněte na Server a použijte existující server nebo vytvořte a nakonfigurujte nový server. Buď vyberte existující server, nebo klikněte na Vytvořit nový server a vyplňte formulář Nový server následujícími informacemi:

    Nastavení       Navrhovaná hodnota Popis 
    Název serveru Libovolný globálně jedinečný název Platné názvy serverů najdete v tématu Pravidla a omezení pojmenování.
    Přihlašovací jméno správce serveru Libovolné platné jméno Platné přihlašovací jména najdete v tématu Identifikátory databáze.
    Heslo Libovolné platné heslo Heslo musí mít alespoň osm znaků a musí používat znaky ze tří z následujících kategorií: velká písmena, malá písmena, číslice a jiné než alfanumerické znaky.
    Umístění Libovolné platné umístění Informace o oblastech najdete v tématu Oblasti služeb Azure.

    create database-server

  5. Klikněte na Vybrat.

  6. Klikněte na Cenová úroveň a zadejte úroveň služby, počet DTU nebo virtuálních jader a velikost úložiště. Můžete prozkoumat možnosti počtu DTU/virtuálních jadek a úložiště, které máte k dispozici pro jednotlivé úrovně služby.

    Po výběru úrovně služby, počtu DTU nebo virtuálních jade a množství úložiště klikněte na Použít.

  7. Zadejte kolaci pro prázdnou databázi (pro tento kurz použijte výchozí hodnotu). Další informace o kolacích najdete v tématu Kolace.

  8. Teď, když jste dokončili formulář SQL Database, klikněte na Vytvořit a zřískejte databázi. Tento krok může trvat několik minut.

  9. Na panelu nástrojů klikněte na Oznámení a sledujte proces nasazení.

    Snímek obrazovky zobrazuje nabídku Oznámení s probíhajícím nasazením.

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ázi na serveru, pokud pravidlo brány firewall nepomáhou jejich IP přes bránu 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). Postupujte podle těchto kroků a 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 k této službě pokoušíte připojit z podnikové sítě, nemusí být odchozí provoz přes port 1433 bránou firewall vaší sítě povolený. Pokud ano, nemůžete se připojit ke své databázi, dokud správce otevře port 1433.

  1. Po dokončení nasazení vyberte databáze SQL v nabídce Azure Portal nebo vyhledejte a vyberte Databáze SQL na libovolné stránce.

  2. Na stránce Databáze SQL vyberte vašeDatabáze. Otevře se stránka s přehledem pro vaši databázi, na které se zobrazí plně kvalifikovaný název serveru (například ) a možnosti contosodatabaseserver01.database.windows.net pro další konfiguraci.

    název serveru

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

  4. Na panelu nástrojů klikněte na Nastavit bránu firewall serveru. Otevře se stránka Nastavení brány firewall pro server.

    pravidlo brány firewall protokolu IP na úrovni serveru

  5. Kliknutím na Přidat IP adresu klienta na panelu nástrojů 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. Klikněte na Uložit. Pro vaši aktuální IP adresu se vytvoří pravidlo brány firewall protokolu IP na úrovni serveru, které otevře port 1433 na serveru.

  7. Klikněte na 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. Teď se můžete připojit k databázi pomocí 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 SQL Database IP firewall povolený pro všechny služby Azure. Kliknutím na OFF na této stránce provedete zákaz pro všechny služby Azure.

Připojte se k databázi.

Pomocí SQL Server Management Studio navázání připojení k databázi.

  1. Otevřete sadu SQL Server Management Studio.

  2. V dialogovém okně Připojení k serveru zadejte následující informace:

    Nastavení       Navrhovaná hodnota Popis 
    Typ serveru Databázový stroj Tato hodnota se vyžaduje.
    Název serveru Plně kvalifikovaný název serveru Příklad: yourserver.database.windows.net.
    Authentication Ověřování SQL Serveru Ověřování SQL je jediný typ ověřování, který jsme nakonfigurovali v tomto kurzu.
    Přihlásit Úč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.

    Připojení k serveru

  3. Klikněte na Možnosti v dialogovém okně Připojit k serveru. V části Připojit k databázi zadejte yourDatabase a připojte se k této databázi.

    připojení k databázi na serveru

  4. Klikněte na Připojit. V Průzkumník objektů SSMS se otevře okno pro nastavení.

  5. V Průzkumník objektů rozbalte Databáze a pak rozbalte yourDatabase a zobrazte objekty v ukázkové databázi.

    databázové objekty

Vytváření tabulek v databázi

Vytvořte schéma databáze se čtyřmi tabulkami, které modelují systém správy studentů univerzity, pomocí Transact-SQL:

  • Person (Osoba)
  • Kurz
  • Student
  • Kredit

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 tabulka Student odkazuje na sloupec PersonId (Id osoby) tabulky Person (Osoba). Prohlédněte si diagram, abyste pochopili, jak spolu tabulky v tomto kurzu souvisejí. Podrobný rozbor toho, jak vytvářet efektivní databázové tabulky, najdete v tématu Vytváření efektivních databázových tabulek. Informace o výběru datových typů najdete v tématu Datové typy.

Poznámka

Tabulky můžete také vytvářet a navrhovat pomocí Návrháře tabulky v aplikaci SQL Server Management Studio.

Vztahy mezi tabulkami

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

  2. V okně dotazu vytvořte v databázi čtyři tabulky spuštěním následujícího 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
        )
    )
    

    Vytváření tabulek

  3. Rozbalte uzel Tabulky pod vašíDatabáze v Průzkumník objektů a zobrazte tabulky, které jste vytvořili.

    Vytvořené tabulky aplikace SSMS

Načtení dat do tabulek

  1. Ve složce Stažené soubory vytvořte složku s názvem sampleData, do které se budou ukládat ukázková data pro vaši databázi.

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

  3. Otevřete okno příkazového řádku a přejděte do složky sampleData.

  4. Spuštěním následujících 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.

Dotazování dat

Informace z databázových tabulek můžete načíst spuštěním následujících dotazů. Další informace o psaní dotazů SQL najdete v tématu Psaní dotazů SQL. První dotaz spojí všechny čtyři tabulky, aby našel studenty vyučované Veykem Popem, kteří mají známku vyšší než 75 %. Druhý dotaz spojí všechny čtyři tabulky a najde kurzy, ve kterých se Noe <1>man někdy zaregistroval.

  1. V okně dotazu aplikace SQL Server Management Studio spusťte následující dotaz:

    -- 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
    
  2. V okně dotazu spusťte následující dotaz:

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

Další kroky

V tomto kurzu jste se naučili mnoho základních databázových úloh. Naučili jste se:

  • Vytvoření databáze pomocí Azure Portal*
  • Nastavení pravidla brány firewall protokolu IP na úrovni serveru pomocí Azure Portal
  • Připojit se k databázi pomocí SSMS
  • Vytvářet tabulky pomocí SSMS
  • Hromadně načítat data pomocí BCP
  • Dotazování dat pomocí aplikace SSMS

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