Cvičení – připojení k databázi a přidání ukázkových dat

Dokončeno

Než k vaší aplikaci připojíte databázi, měli byste ověřit, jestli se k ní můžete připojit, a můžete také přidat základní tabulku a pracovat s ukázkovými daty.

O infrastrukturu, aktualizace softwaru a opravy pro vaši databázi Azure SQL Database se staráme my. S databází Azure SQL můžete zacházet stejně jako s jakoukoli jinou instalací SQL Serveru. Ke správě Azure SQL Database můžete používat třeba Visual Studio, SQL Server Management Studio, Azure Data Studio a další nástroje.

Jak budete k databázi přistupovat a jak ji připojíte k aplikacím, je na vás. Abychom získali zkušenosti s prací s databází, připojme se k ní přímo z portálu, vytvořte tabulku a spusťte několik základních operací CRUD. Tady se dozvíte:

  • Co je Cloud Shell a jak se k němu dostat z portálu.
  • Jak pomocí Azure CLI získat informace o vaší databázi, včetně připojovacích řetězců.
  • Jak se k databázi připojit pomocí sqlcmd.
  • Jak databázi inicializovat základní tabulkou a nějakými ukázkovými daty.

Co je Azure Cloud Shell?

Azure Cloud Shell je prostředí založené na prohlížeči, které je určené ke správě a vývoji prostředků Azure. Cloud Shell si můžete představit jako interaktivní konzolu, která běží v cloudu.

Pro zajímavost – Cloud Shell běží na Linuxu. V závislosti na tom, jestli dáváte přednost prostředí Linuxu nebo Windows, ale máte dvě možnosti, ze kterých si můžete vybrat: Bash a PowerShell.

Cloud Shell je přístupný odkudkoli. Ke Cloud Shellu se dostanete nejen z portálu, ale také z shell.azure.com, mobilní aplikace Azure nebo z Visual Studio Code.

Cloud Shell obsahuje oblíbené nástroje a textové editory. Zde je stručný přehled aznástrojů , jqa sqlcmd nástrojů, které používáte v tomto cvičení.

  • az se také označuje jako Azure CLI. Je to rozhraní příkazového řádku pro práci s prostředky Azure. Toto rozhraní slouží k získání informací o databázi, včetně připojovací řetězec.
  • jq je analyzátor příkazového řádku ve formátu JSON. Výstup z az příkazů do tohoto nástroje můžete táhnout tak, aby extrahovali důležitá pole z výstupu JSON.
  • sqlcmd umožňuje spouštět příkazy na SQL Serveru. Použijete sqlcmd k vytvoření interaktivní relace s databází Azure SQL.

Získání informací o Azure SQL Database

Než se k databázi připojíte, je vhodné ověřit, jestli existuje a je online.

Tady pomocí nástroje az vypíšete svoje databáze a zobrazíte některé informace o databázi Logistics (Logistika), včetně její maximální velikosti a stavu.

  1. Navštivte shell.azure.com nebo na webu Azure Portal vyberte tlačítko Cloud Shellu z globálních ovládacích prvků okna webu Azure Portal.

  2. Pokud je tato možnost udělena, zvolte pro toto výukové cvičení Bash .

  3. V místní nabídce Začínáme vyberte Bez účtu úložiště. V rozevíracím seznamu Předplatné vyberte své předplatné. Vyberte Použít. Nový terminál Cloud Shellu se načte.

  4. Příkazy az , které spustíte, vyžadují název vaší skupiny prostředků a název logického serveru Azure SQL. Pokud chcete uložit stisknutí kláves, spusťte tento azure configure příkaz a zadejte je jako výchozí hodnoty.

    Nahraďte [server-name] názvem logického serveru Azure SQL, který jste vytvořili, a [resource-group] skupinou prostředků, kterou jste použili pro váš server.

    Tip

    Pokud chcete vložit do Cloud Shellu, použijte Ctrl+Shift+V místo Ctrl+V. Slouží Ctrl+C k vymazání aktuálního příkazu z terminálu.

    az configure --defaults group=[resource-group] sql-server=[server-name]
    

    Poznámka:

    V závislosti na podokně, které používáte na webu Azure Portal, se název sql serveru zobrazí jako plně kvalifikovaný název domény (FQDN) (například servername.database.windows.net) nebo samostatný (servername). Pro tento příkaz potřebujete jenom logický název bez přípony .database.windows.net .

  5. Spuštěním následujícího az sql db list příkazu zobrazte seznam všech databází na logickém serveru Azure SQL:

    az sql db list
    

    Jako výstup získáte velký blok JSON.

  6. Protože chceme získat jenom názvy databází, spusťte příkaz podruhé. Tentokrát ale předáte výstup tak, aby jq zobrazoval jenom pole názvů.

    az sql db list | jq '[.[] | {name: .name}]'
    

    Měl by se zobrazit tento výstup:

    [
      {
        "name": "Logistics"
      },
      {
        "name": "master"
      }
    ]
    

    Logistics je vaše uživatelská databáze. Stejně jako v SQL Serveru master systémová databáze obsahuje metadata serveru, jako jsou přihlášení a nastavení konfigurace systému.

  7. Spuštěním následujícího az sql db show příkazu získejte podrobnosti o Logistics databázi:

    az sql db show --name Logistics
    

    Jako předtím uvidíte jako výstup velký blok ve formátu JSON.

  8. Spusťte příkaz znovu. Tentokrát odešlete výstup tak, aby jq byl výstup omezen pouze na název, maximální velikost a stav databáze Logistics .

    az sql db show --name Logistics | jq '{name: .name, maxSizeBytes: .maxSizeBytes, status: .status}'
    

    Vidíte, že databáze je online a maximální množství dat, která může databáze uložit.

    {
      "name": "Logistics",
      "maxSizeBytes": 2147483648,
      "status": "Online"
    }
    

    Pokud jste zvolili nabídku Azure SQL Database Free, bezserverová databáze se po určité době nečinnosti automaticky pozastaví, aby se ušetřila vaše bezplatná virtuální jádra, takže se vaše databáze může zobrazit Logistics se stavem Pozastaveno po určité době nečinnosti.

Připojení k databázi

Připojovací řetězec obsahuje všechny informace potřebné pro připojení aplikace k databázi. I když jste stále v Cloud Shellu, začněme tím, že se tam dostanete připojovací řetězec.

Připojovací řetězec z Cloud Shellu

Spuštěním následujícího az sql db show-connection-string příkazu získejte připojovací řetězec do Logistics databáze ve formátu, který sqlcmd může použít:

 az sql db show-connection-string --client sqlcmd

Výstup vypadá podobně jako v následujícím příkladu. Zkopírujte tento výstup pro použití v dalším kroku.

"sqlcmd -S tcp:<server-name>.database.windows.net,1433 -d Logistics -U <username> -P <password> -N -l 30"

Připojovací řetězec z webu Azure Portal

Azure Portal poskytuje připojovací řetězec pro různé poskytovatele dat pro vaši databázi Azure SQL, která je snadno přístupná.

  1. Na webu Azure Portal přejděte do databáze SQL.
  2. V nabídce služby databáze SQL v části Nastavení vyberte Připojovací řetězce.
  3. Zvolte požadovaného zprostředkovatele dat a metodu připojení.

Připojení k databázi pomocí editoru Visual Studio Code

Pojďme se pomocí grafického nástroje připojit k nové službě Azure SQL Database. Visual Studio Code je oblíbený opensourcový editor kódu pro Linux, macOS a Windows. Podporuje rozšíření, včetně rozšíření mssql. Toto rozšíření můžete použít k dotazování SQL Serveru, Azure SQL Database, Spravované instance Azure SQL, databáze SQL v prostředcích infrastruktury a dalších platforem.

  1. Stáhněte a nainstalujte si Visual Studio Code.

  2. V editoru Visual Studio Code otevřete zobrazení Rozšíření výběrem ikony Rozšíření na panelu aktivit na straně okna. Vyhledejte mssql a vyberte Nainstalovat a přidejte rozšíření. a rozšíření mssql na místní pracovní stanici.

    Tip

    Pro budoucí vývoj aplikačních projektů databázových objektů použijte také rozšíření SQL Database Projects pro Visual Studio Code. Tento nástroj umožňuje pracovat s databází ve správě zdrojového kódu, zachytávat existující schémata databáze, navrhovat nové objekty a publikovat je do databází.

  3. V seznamu rozšíření zvolte rozšíření SQL Serveru .

  4. V části PŘIPOJENÍ vyberte Přidat připojení.

    Snímek obrazovky editoru Visual Studio Code s otevřeným dialogem Přidat připojení rozšíření mssql

  5. Dejte novému připojení vlastní zapamatovatelný název v názvu profilu.

  6. Informace o připojení můžete zadat několika způsoby:

    • Zvolte Parametry a ručně zadejte název logického serveru Azure SQL, název databáze, uživatelské jméno a heslo.
    • Zvolte Připojovací řetězec, který chcete vložit do připojovací řetězec databáze, a pak přidejte svoje uživatelské jméno a heslo.
    • Zvolte Procházet Azure , abyste se připojili k předplatnému Azure ve VS Code a ze seznamu vyberte novou službu Azure SQL Database.
  7. V tomto výukovém cvičení zvolte Procházet Azure. Připojte se k předplatnému Azure z VS Code.

  8. V seznamu vyberte své předplatné .

  9. Ze seznamu vyberte svou skupinu prostředků.

  10. Ze seznamu vyberte server a databázi.

  11. Pokud je typ ověřování nastavený na přihlášení SQL, zadejte uživatelské jméno a heslo , které jsme vytvořili v posledním modulu.

  12. Vyberte Připojit.

  13. Po úspěšném připojení dialogové okno Přidat připojení zmizí. Nahrazuje připojení k serveru a průzkumník objektů tabulek, zobrazení atd.

    Snímek obrazovky s rozšířením VS Code mssql se zobrazenými objekty připojenými k serveru a databázovými objekty

Dotazování databáze pomocí editoru Visual Studio Code

Pojďme spustit řadu příkazů pro provádění základních operací CRUD (Create, Read, Update, Delete) ve službě Azure SQL Database.

  1. Klikněte pravým tlačítkem myši na řádek názvu serveru v části PŘIPOJENÍ a vyberte Nový dotaz.

    Snímek obrazovky s možností Nový dotaz v části Připojení v rozšíření mssql pro Visual Studio Code

  2. V novém okně dotazu vytvoříme první databázový objekt vložením následujícího příkazu a vytvoříme novou tabulku s názvem Drivers.

    CREATE TABLE Drivers (DriverID int IDENTITY(1,1), LastName varchar(255), FirstName varchar(255), OriginCity varchar(255));
    GO
    

    Tabulka obsahuje čtyři sloupce: jedinečný identifikátor, příjmení a jméno řidiče a město, odkud řidič pochází.

  3. Výběrem tlačítka Spustit dotaz spusťte příkazy T-SQL v okně dotazu.

    Tip

    Pokud chcete v okně dotazu spustit jeden příkaz T-SQL, přetáhněte požadovaný dotaz a pak spusťte.

    Snímek obrazovky okna Nový dotaz s příkazem T-SQL pro tabulku Ovladače Tlačítko Spustit je zvýrazněné.

    Stejně jako téměř cokoli v editoru Visual Studio Code je možné přizpůsobit klávesové zkratky v editoru Visual Studio Code. Ve Windows je výchozí klávesová zkratka pro Ctrl + Shift + E .

  4. Potom spuštěním následujících příkazů T-SQL ověřte, že Drivers tabulka existuje, a to dotazováním metadat databáze:

    SELECT name FROM sys.tables;
    GO
    

    Na kartě Výsledky dotazu v části Výsledky byste měli vidět, že Drivers v seznamu tabulek existuje.

    name
    -------
    Drivers
    
  5. Pojďme do naší tabulky přidat řádek. Spuštěním následujících příkazů T-SQL přidejte do tabulky ukázkový řádek:

    INSERT INTO Drivers (LastName, FirstName, OriginCity) VALUES ('Zirne', 'Laura', 'Springfield');
    GO
    

    Tento výstup označuje, že operace proběhla úspěšně:

    3:14:01 PM
    Started executing query at Line 7
    (1 row affected)
    Total execution time: 00:00:00.044
    
  6. Pokud chcete zobrazit řádek, který jsme vložili, spusťte následující příkazy T-SQL a zobrazte seznam DriverID sloupců OriginCity ze všech řádků v tabulce:

    SELECT DriverID, OriginCity FROM Drivers;
    GO
    

    Zobrazí se jeden výsledek s řádkem DriverIDOriginCity , který jste vytvořili v předchozím kroku.

    DriverID    OriginCity
    ----------- --------------------------
    1           Springfield
    
  7. Pojďme řádek aktualizovat a změnit .OriginCity Spuštěním následujícího příkazu T-SQL změňte město původu z "Springfield" na "Boston" pro řidiče s DriverID1:

    UPDATE Drivers SET OriginCity='Boston' WHERE DriverID=1;
    GO
    

    V okně Výsledky dotazu by se měla zobrazit zpráva s potvrzením provádění dotazu:

    3:14:29 PM
    Started executing query at Line 13
    (1 row affected)
    Total execution time: 00:00:00.031
    
  8. Spusťte následující příkazy T-SQL, které znovu zobrazí seznam DriverID sloupců a OriginCity sloupců:

    SELECT DriverID, OriginCity FROM Drivers;
    GO
    

    Teď byste měli získat následující výstup. Všimněte si, jak OriginCity odráží aktualizaci na Boston.

    DriverID    OriginCity
    ----------- --------------------------
    1           Boston
    
  9. Nakonec tento řádek odebereme spuštěním následujícího příkazu T-SQL, který odstraní záznam:

    DELETE FROM Drivers WHERE DriverID=1;
    GO
    
    3:15:00 PM
    Started executing query at Line 16
    (1 row affected)
    Total execution time: 00:00:00.017
    
  10. Spuštěním následujících příkazů T-SQL ověřte, že Drivers je tabulka prázdná:

    SELECT COUNT(*) FROM Drivers;
    GO
    

    Uvidíte, že tabulka neobsahuje žádné řádky.

    -----------
              0
    

Teď, když máte obecný nápad na práci se službou Azure SQL Database z Cloud Shellu a v sadě Visual Studio. Můžete použít připojovací řetězec pro oblíbený nástroj pro správu SQL, včetně aplikace SQL Server Management Studio, sady Visual Studio nebo vlastních aplikací.

Cloud Shell usnadňuje přístup k prostředkům Azure libovolného druhu a práci s ním. Vzhledem k tomu, že cloud Shell je založený na prohlížeči, můžete k němu přistupovat z Windows, macOS nebo Linuxu; v libovolném systému s webovým prohlížečem.

Získali jste praktické zkušenosti se spouštěním příkazů T-SQL v editoru Visual Studio Code a procvičili jste si své dovednosti T-SQL.

V další lekci zabalíme tento modul a popíšeme, jak databázi odbourat.