Cvičení – připojení k databázi a přidání ukázkových dat
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 az
nástrojů , jq
a 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 zaz
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žijetesqlcmd
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.
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.
Pokud je tato možnost udělena, zvolte pro toto výukové cvičení Bash .
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.
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 tentoazure 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ístoCtrl+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
.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.
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 Serverumaster
systémová databáze obsahuje metadata serveru, jako jsou přihlášení a nastavení konfigurace systému.Spuštěním následujícího
az sql db show
příkazu získejte podrobnosti oLogistics
databázi:az sql db show --name Logistics
Jako předtím uvidíte jako výstup velký blok ve formátu JSON.
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á.
- Na webu Azure Portal přejděte do databáze SQL.
- V nabídce služby databáze SQL v části Nastavení vyberte Připojovací řetězce.
- 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.
Stáhněte a nainstalujte si Visual Studio Code.
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í.
V seznamu rozšíření zvolte rozšíření SQL Serveru .
V části PŘIPOJENÍ vyberte Přidat připojení.
Dejte novému připojení vlastní zapamatovatelný název v názvu profilu.
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.
V tomto výukovém cvičení zvolte Procházet Azure. Připojte se k předplatnému Azure z VS Code.
V seznamu vyberte své předplatné .
Ze seznamu vyberte svou skupinu prostředků.
Ze seznamu vyberte server a databázi.
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.
Vyberte Připojit.
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.
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.
Klikněte pravým tlačítkem myši na řádek názvu serveru v části PŘIPOJENÍ a vyberte Nový dotaz.
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í.
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.
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
.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
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
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
DriverID
OriginCity
, který jste vytvořili v předchozím kroku.DriverID OriginCity ----------- -------------------------- 1 Springfield
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 sDriverID
1
: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
Spusťte následující příkazy T-SQL, které znovu zobrazí seznam
DriverID
sloupců aOriginCity
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
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
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.