Übung: Verbinden mit der Datenbank und Hinzufügen von Beispieldaten
Bevor Sie die Datenbank mit Ihrer App verbinden, sollten Sie überprüfen, ob Sie eine Verbindung mit ihr herstellen, ihr eine einfache Tabelle hinzufügen und mit Beispieldaten arbeiten können.
Wir verwalten die Infrastruktur, Softwareupdates und Patches für Ihre Azure SQL-Datenbank. Sie können Ihre Azure SQL-Datenbank wie jede andere SQL Server-Installation behandeln. Sie können z.B. Visual Studio, Azure Data Studio, SQL Server Management Studio oder andere Tools zum Verwalten von Azure SQL-Datenbank verwenden.
Wie Sie auf die Datenbank zugreifen und die Verbindung zwischen ihr und Ihrer App herstellen, bleibt Ihnen überlassen. Um ein wenig Erfahrung mit Ihrer Datenbank zu sammeln, stellen Sie direkt über das Portal eine Verbindung mit ihr her, erstellen eine Tabelle und führen einige grundlegende CRUD-Vorgänge aus. Hier lernen Sie:
- Was Cloud Shell ist und wie Sie über das Portal darauf zugreifen.
- Wie Sie über Azure CLI auf Informationen zu Ihrer Datenbank zugreifen, einschließlich der Verbindungszeichenfolgen.
- Wie Sie mittels
sqlcmd
eine Verbindung mit Ihrer Datenbank herstellen. - Wie Sie die Datenbank mit einer grundlegenden Tabelle und einigen Beispieldaten initialisieren.
Was ist Azure Cloud Shell?
Azure Cloud Shell ist eine browserbasierte Shell zum Verwalten und Entwickeln von Azure-Ressourcen. Stellen Sie sich Cloud Shell als eine interaktive Konsole vor, die in der Cloud ausgeführt wird.
Hinter den Kulissen wird Cloud Shell unter Linux ausgeführt. Aber abhängig davon, ob Sie eine Linux- oder Windows-Umgebung bevorzugen, haben Sie zwei Oberflächen zur Auswahl: Bash und PowerShell.
Auf Cloud Shell können Sie von überall zugreifen. Neben dem Portal können Sie auch über shell.azure.com, über die mobile Azure-App oder über Visual Studio Code auf Cloud Shell zugreifen.
Cloud Shell umfasst beliebte Tools und Text-Editoren. Hier lernen Sie kurz die Hilfsprogramme az
, jq
und sqlcmd
kennen, drei Tools, die Sie für diese Übung verwenden.
az
wird auch als Azure CLI bezeichnet. Dies ist die Befehlszeilenschnittstelle für die Arbeit mit Azure-Ressourcen. Sie verwenden die Schnittstelle, um Informationen zu Ihrer Datenbank (einschließlich der Verbindungszeichenfolge) zu erhalten.jq
ist ein Befehlszeilen-JSON-Parser. Sie reichen die Ausgabe vonaz
-Befehlen an dieses Tool weiter, um wichtige Felder aus der JSON-Ausgabe zu extrahieren.- Mit
sqlcmd
können Sie Anweisungen auf einer SQL Server-Instanz ausführen. Mitsqlcmd
erstellen Sie eine interaktive Sitzung mit Ihrer Azure SQL-Datenbankinstanz.
Abrufen von Informationen zu Ihrer Azure SQL-Datenbank-Instanz
Bevor Sie eine Verbindung mit Ihrer Datenbank herstellen, sollten Sie überprüfen, ob sie vorhanden und online ist.
Hierzu listen Sie mithilfe des Hilfsprogramms az
Ihre Datenbanken auf und zeigen Informationen zur Datenbank Logistics an (einschließlich maximaler Größe und Status).
Navigieren Sie zu shell.azure.com, oder wählen Sie im Fenster des Azure-Portals die Schaltfläche Cloud Shell aus den globalen Steuerelementen aus.
Wenn die Option Bash verfügbar ist, wählen Sie diese für diese Lernübung aus.
Wählen Sie im Popupfenster Erste Schritte die Option Kein Speicherkonto erforderlich aus. Wählen Sie in der Dropdownliste Abonnement Ihr Abonnement aus. Wählen Sie Übernehmen. Das neue Cloud Shell-Terminal wird geladen.
Die von Ihnen ausgeführten
az
-Befehle erfordern den Namen Ihrer Ressourcengruppe und den Namen Ihres logischen Azure SQL-Servers. Sie können sich die Eingabe über die Tastatur ersparen, indem Sie diesenazure configure
-Befehl ausführen, um sie als Standardwerte anzugeben.Ersetzen Sie
[server-name]
durch den Namen des logischen Azure SQL-Servers, den Sie erstellt haben, und[resource-group]
durch die Ressourcengruppe, die Sie für Ihren Server verwendet haben.Tipp
Für das Einfügen in eine Cloud Shell verwenden Sie
Ctrl+Shift+V
anstelle vonCtrl+V
. Verwenden SieCtrl+C
, um den aktuellen Befehl im Terminal zu löschen.az configure --defaults group=[resource-group] sql-server=[server-name]
Hinweis
Abhängig vom angezeigten Bereich im Azure-Portal wird Ihr SQL Server-Name als vollqualifizierter Domänenname (FQDN, z. B.
servername.database.windows.net
) oder als eigenständiger Name (servername
) angezeigt. Für diesen Befehl benötigen Sie nur den logischen Namen ohne das Suffix.database.windows.net
.Führen Sie den folgenden
az sql db list
-Befehl aus, um alle Datenbanken auf dem logischen Azure SQL-Server aufzulisten.az sql db list
Daraufhin wird ein umfangreicher JSON-Block ausgegeben.
Führen Sie den Befehl ein zweites Mal aus, da nur die Datenbanknamen angezeigt werden sollen. Übergeben Sie die Ausgabe diesmal jedoch an
jq
, um nur die Namensfelder anzuzeigen.az sql db list | jq '[.[] | {name: .name}]'
Die Ausgabe sollte wie folgt aussehen:
[ { "name": "Logistics" }, { "name": "master" } ]
Logistics
ist Ihre Benutzerdatenbank. Wie bei SQL Server enthält die Systemdatenbankmaster
Servermetadaten wie Anmeldungen und Systemkonfigurationseinstellungen.Führen Sie den folgenden
az sql db show
-Befehl aus, um Details zurLogistics
-Datenbank zu erhalten:az sql db show --name Logistics
Wie bereits zuvor sehen Sie einen großen JSON-Block als Ausgabe.
Führen Sie den Befehl ein zweites Mal aus. Reichen Sie die Ausgabe diesmal an
jq
weiter, um die Ausgabe auf den Namen, die maximale Größe und den Status der Logistics-Datenbank zu beschränken.az sql db show --name Logistics | jq '{name: .name, maxSizeBytes: .maxSizeBytes, status: .status}'
Sie sehen, dass die Datenbank online ist, und es wird die maximale Menge an Daten angezeigt, die in der Datenbank gespeichert werden können.
{ "name": "Logistics", "maxSizeBytes": 2147483648, "status": "Online" }
Wenn Sie das kostenlose Angebot von Azure SQL-Datenbank ausgewählt haben, wird die serverlose Datenbank automatisch angehalten, um Ihre kostenlosen vCore-Sekunden zu sparen. Aus diesem Grund wird Ihre Datenbank
Logistics
nach einer bestimmten Zeit der Inaktivität mit dem Status „Angehalten“ angezeigt.
Verbinden mit der Datenbank
Eine Verbindungszeichenfolge enthält alle Informationen, die eine Anwendung benötigt, um eine Verbindung mit Ihrer Datenbank herzustellen. Da Sie noch die Cloud Shell geöffnet haben, können Sie dort Ihre Verbindungszeichenfolge abrufen.
Verbindungszeichenfolge in der Cloud Shell
Führen Sie den folgenden az sql db show-connection-string
-Befehl aus, um die Verbindungszeichenfolge zum Herstellen der Verbindung mit der Logistics
-Datenbank in einem Format abzurufen, das von sqlcmd
verwendet werden kann:
```azurecli
az sql db show-connection-string --client sqlcmd
```
Your output resembles the following example. Copy this output for use in the next step.
```output
"sqlcmd -S tcp:<server-name>.database.windows.net,1433 -d Logistics -U <username> -P <password> -N -l 30"
```
Verbindungszeichenfolge im Azure-Portal
Im Azure-Portal werden Verbindungszeichenfolgen für verschiedene Datenanbieter für Ihre Azure SQL-Datenbank-Instanz bereitgestellt, auf die Sie problemlos zugreifen können.
- Navigieren Sie im Azure-Portal zu Ihrer SQL-Datenbank.
- Wählen Sie im Dienstmenü Ihrer SQL-Datenbank unter Einstellungen die Option Verbindungszeichenfolgen aus.
- Wählen Sie den gewünschten Datenanbieter und die gewünschte Verbindungsmethode aus.
Herstellen einer Verbindung mit Ihrer Datenbank über Visual Studio Code
Verwenden Sie nun ein grafisches Tool, um eine Verbindung mit Ihrer neuen Azure SQL-Datenbank-Instanz herzustellen. Visual Studio Code ist ein beliebter Open-Source-Code-Editor für Linux, macOS und Windows. Erweiterungen wie die mssql-Erweiterung werden unterstützt. Sie können die Erweiterung zum Abfragen von SQL Server, Azure SQL-Datenbank, Azure SQL Managed Instance, SQL-Datenbank in Fabric und anderen Plattformen verwenden.
Laden Sie Visual Studio Code herunter, und installieren Sie die Software.
Öffnen Sie in Visual Studio Code die Ansicht „Erweiterungen“, indem Sie auf der linken Seite des Fensters auf der Aktivitätsleiste das Symbol Erweiterungen auswählen. Suchen Sie nach „mssql“, und wählen Sie Installieren aus, um die Erweiterung hinzuzufügen. und die mssql-Erweiterung auf Ihrer lokalen Arbeitsstation.
Tipp
Verwenden Sie für die zukünftige Anwendungsprojektentwicklung Ihrer Datenbankobjekte auch die Erweiterung für SQL-Datenbankprojekte für Visual Studio Code. Mit diesem Tool können Sie mit Ihrer Datenbank in der Quellcodeverwaltung arbeiten, vorhandene Datenbankschemas erfassen, neue Objekte entwerfen und in Datenbanken veröffentlichen.
Wählen Sie in der Erweiterungsliste die Erweiterung SQL Server aus.
Wählen Sie unter VERBINDUNGEN die Option Verbindung hinzufügen aus.
Geben Sie Ihrer neuen Verbindung unter Profilname einen einprägsamen Namen.
Sie können die Verbindungsinformationen auf unterschiedliche Weise bereitstellen:
- Wählen Sie Parameter aus, um den logischen Azure SQL-Servernamen, den Datenbanknamen, den Benutzernamen und das Kennwort manuell einzugeben.
- Wählen Sie Verbindungszeichenfolge aus, um die Verbindungszeichenfolge für Ihre Datenbank einzufügen, und fügen Sie dann Ihren Benutzernamen und Ihr Kennwort hinzu.
- Wählen Sie Azure durchsuchen aus, um in VS Code eine Verbindung mit Ihrem Azure-Abonnement herzustellen, und wählen Sie Ihre neue Azure SQL-Datenbank-Instanz aus einer Liste aus.
Wählen Sie für diese Lernübung Azure durchsuchen aus. Stellen Sie in VS Code eine Verbindung mit Ihrem Azure-Abonnement her.
Wählen Sie Ihr Abonnement in der Liste aus.
Wählen Sie Ihre Ressourcengruppe in der Liste aus.
Wählen Sie Ihren Server und Ihre Datenbank aus der Liste aus.
Wenn der Authentifizierungstyp auf SQL-Anmeldung festgelegt ist, geben Sie den Benutzernamen und das Kennwort an, die Sie im letzten Modul erstellt haben.
Wählen Sie Verbinden.
Wenn Sie erfolgreich eine Verbindung herstellen können, wird das Dialogfeld Verbindung hinzufügen ausgeblendet. Es wird durch Ihre Serververbindung und einen Objekt-Explorer mit Tabellen, Sichten usw. ersetzt.
Abfragen Ihrer Datenbank mit Visual Studio Code
Führen Sie nun einige Befehle aus, um grundlegende CRUD-Vorgänge (Create, Read, Update, Delete) in Ihrer Azure SQL-Datenbank-Instanz auszuführen.
Klicken Sie unter VERBINDUNGEN mit der rechten Maustaste auf die Zeile mit dem Servernamen, und wählen Sie Neue Abfrage aus.
Erstellen Sie nun im neuen Abfragefenster ein erstes Datenbankobjekt, indem Sie den folgenden Befehl einfügen, um eine neue Tabelle namens
Drivers
zu erstellen.CREATE TABLE Drivers (DriverID int IDENTITY(1,1), LastName varchar(255), FirstName varchar(255), OriginCity varchar(255)); GO
Die Tabelle enthält vier Spalten: einen eindeutigen Bezeichner, Nach- und Vorname des Fahrers und den Herkunftsort des Fahrers.
Wählen Sie die Schaltfläche Abfrage ausführen aus, um die T-SQL-Befehle im Abfragefenster auszuführen.
Tipp
Um einen einzelnen T-SQL-Befehl unter vielen in einem Abfragefenster auszuführen, ziehen Sie die gewünschte Abfrage, wählen anschließend die Abfrage und dann Ausführen aus.
Wie fast alles in Visual Studio Code können auch Tastenkombinationen in Visual Studio Code angepasst werden. In Windows ist
Ctrl + Shift + E
die Standardtastaturkombination für Ausführen.Führen Sie als Nächstes die folgenden T-SQL-Anweisungen aus, um zu überprüfen, ob die Tabelle
Drivers
vorhanden ist, indem Sie Datenbankmetadaten abfragen:SELECT name FROM sys.tables; GO
Auf der Registerkarte Abfrageergebnisse sollten Sie unter Ergebnisse sehen, dass
Drivers
in der Liste der Tabellen enthalten ist.name ------- Drivers
Fügen Sie nun Ihrer Tabelle eine Zeile hinzu. Führen Sie die folgenden T-SQL-Anweisungen aus, um der Tabelle eine Beispielzeile hinzuzufügen:
INSERT INTO Drivers (LastName, FirstName, OriginCity) VALUES ('Zirne', 'Laura', 'Springfield'); GO
Die folgende Ausgabe gibt an, dass der Vorgang erfolgreich war:
3:14:01 PM Started executing query at Line 7 (1 row affected) Total execution time: 00:00:00.044
Führen Sie die folgenden T-SQL-Anweisungen aus, um die Spalten
DriverID
undOriginCity
für alle Zeilen in der Tabelle aufzulisten und damit auch die Zeile anzuzeigen, die Sie eingefügt haben:SELECT DriverID, OriginCity FROM Drivers; GO
Sie erhalten ein Ergebnis mit
DriverID
undOriginCity
für die Zeile, die Sie im vorherigen Schritt erstellt haben.DriverID OriginCity ----------- -------------------------- 1 Springfield
Aktualisieren Sie nun die Zeile, und ändern Sie den Wert von
OriginCity
. Führen Sie die folgende T-SQL-Anweisung aus, um den Herkunftsort für den Fahrer mit dem WertDriverID
für1
von „Springfield“ in „Boston“ zu ändern:UPDATE Drivers SET OriginCity='Boston' WHERE DriverID=1; GO
Sie sollten eine Meldung erhalten, die die Abfrageausführung im Fenster Abfrageergebnisse bestätigt:
3:14:29 PM Started executing query at Line 13 (1 row affected) Total execution time: 00:00:00.031
Führen Sie die folgenden T-SQL-Anweisungen aus, um die Spalten
DriverID
undOriginCity
erneut aufzulisten:SELECT DriverID, OriginCity FROM Drivers; GO
Nun sollten Sie die folgende Ausgabe erhalten: Beachten Sie, dass
OriginCity
die Aktualisierung zu „Boston“ widerspiegelt.DriverID OriginCity ----------- -------------------------- 1 Boston
Entfernen Sie abschließend diese Zeile, indem Sie die folgende T-SQL-Anweisung ausführen, um den Datensatz zu löschen:
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
Führen Sie die folgenden T-SQL-Anweisungen aus, um sich zu vergewissern, dass die
Drivers
-Tabelle leer ist:SELECT COUNT(*) FROM Drivers; GO
Sie sehen, dass die Tabelle keine Zeilen enthält.
----------- 0
Sie haben damit allgemeine Informationen zur Arbeit mit Azure SQL-Datenbank über die Cloud Shell und in Visual Studio erhalten. Sie können die Verbindungszeichenfolge für Ihr bevorzugtes SQL-Verwaltungstool verwenden, einschließlich SQL Server Management Studio, Visual Studio oder benutzerdefinierte Anwendungen.
Cloud Shell vereinfacht den Zugriff auf Ihre Azure-Ressourcen und das Arbeiten damit. Da die Cloud Shell browserbasiert ist, können Sie mit Windows, macOS oder Linux (oder mit jedem System, in dem ein Webbrowser zur Verfügung steht) darauf zugreifen.
Sie haben praktische Erfahrungen zum Ausführen von T-SQL-Befehlen in Visual Studio Code gesammelt und Ihre T-SQL-Fähigkeiten gefestigt.
In der nächsten Lerneinheit wird dieses Modul zusammengefasst. Zudem wird erläutert, wie Sie Ihre Datenbank löschen können.