Lernprogramm: Verwenden des Transact-SQL-Editors zum Erstellen von Datenbankobjekten – Azure Data StudioAzure Data StudioTutorial: Use the Transact-SQL editor to create database objects - Azure Data StudioAzure Data Studio

Das Erstellen und Ausführen von Abfragen, gespeicherten Prozeduren, Skripts usw. sind die Hauptaufgaben von Datenbankexperten.Creating and running queries, stored procedures, scripts, etc. are the core tasks of database professionals. Dieses Tutorial veranschaulicht die wichtigsten Funktionen im T-SQL-Editor zum Erstellen von Datenbankobjekten.This tutorial demonstrates the key features in the T-SQL editor to create database objects.

In diesem Tutorial lernen, wie Sie Azure Data StudioAzure Data Studio für folgende Vorgänge verwenden:In this tutorial, you learn how to use Azure Data StudioAzure Data Studio to:

  • Suchen nach DatenbankobjektenSearch database objects
  • Bearbeiten von TabellendatenEdit table data
  • Verwenden von Codeausschnitten zum schnellen Schreiben von T-SQL-CodeUse snippets to quickly write T-SQL
  • Anzeigen von Datenbankobjektdetails mithilfe von Definition einsehen und Gehe zu DefinitionView database object details using Peek Definition and Go to Definition

VoraussetzungenPrerequisites

Für dieses Tutorial ist die SQL Server- oder Azure SQL-Datenbank TutorialDB erforderlich.This tutorial requires the SQL Server or Azure SQL Database TutorialDB. Um die TutorialDB-Datenbank zu erstellen, führen Sie eine der folgenden Schnellstartanleitungen vollständig aus:To create the TutorialDB database, complete one of the following quickstarts:

Schnelles Auffinden eines Datenbankobjekts und Ausführen einer allgemeinen AufgabeQuickly locate a database object and perform a common task

Azure Data StudioAzure Data Studio bietet ein Suchwidget, mit dem sich Datenbankobjekte schnell finden lassen.provides a search widget to quickly find database objects. Die Ergebnisliste bietet ein Kontextmenü für allgemeine Aufgaben in Bezug auf das ausgewählte Objekt, wie z.B. Daten bearbeiten für eine Tabelle.The results list provides a context menu for common tasks relevant to the selected object, such as Edit Data for a table.

  1. Öffnen Sie die Randleiste SERVER (STRG+G), erweitern Sie Datenbanken, und wählen Sie TutorialDB aus.Open the SERVERS sidebar (Ctrl+G), expand Databases, and select TutorialDB.

  2. Öffnen Sie das TutorialDB-Dashboard, indem Sie mir der rechten Maustaste auf TutorialDB klicken und im Kontextmenü Verwalten auswählen:Open the TutorialDB Dashboard by right-clicking TutorialDB and selecting Manage from the context menu:

    Kontextmenü – Verwalten

  3. Klicken Sie auf dem Dashboard mit der rechten Maustaste auf dbo.Customers (im Suchwidget), und wählen Sie Daten bearbeiten aus.On the dashboard, right-click dbo.Customers (in the search widget) and select Edit Data.

    Tipp

    Verwenden Sie bei Datenbanken mit vielen Objekten das Suchwidget, um die gesuchte Tabelle oder Ansicht schnell zu finden.For databases with many objects, use the search widget to quickly locate the table, view, etc. that you're looking for.

    Widget für die Schnellsuche

  4. Bearbeiten Sie die Spalte Email in der ersten Zeile, geben Sie *orlando0@adventure-works.com* ein, und drücken Sie die EINGABETASTE, um die Änderung zu speichern.Edit the Email column in the first row, type *orlando0@adventure-works.com*, and press Enter to save the change.

    Bearbeiten von Daten

Verwenden von T-SQL-Codeausschnitten zum Erstellen von gespeicherten ProzedurenUse T-SQL snippets to create stored procedures

Azure Data StudioAzure Data Studio bietet viele integrierte T-SQL-Codeausschnitte zum schnellen Erstellen von Anweisungen.provides many built-in T-SQL snippets for quickly creating statements.

  1. Öffnen Sie einen neuen Abfrage-Editor, indem Sie STRG+N drücken.Open a new query editor by pressing Ctrl+N.

  2. Geben Sie im Editor sql ein, navigieren Sie mit der NACH-UNTEN-TASTE nach unten zu sqlCreateStoredProcedure, und drücken Sie die TAB-TASTE (oder die EINGABETASTE), um den Codeausschnitt mit der gespeicherten Prozedur zu laden.Type sql in the editor, arrow down to sqlCreateStoredProcedure, and press the Tab key (or Enter) to load the create stored procedure snippet.

    Liste mit Codeausschnitten

  3. Der Codeausschnitt mit der gespeicherten Prozedur verfügt zur schnellen Bearbeitung über zwei Felder: StoredProcedureName und SchemaName.The create stored procedure snippet has two fields set up for quick edit, StoredProcedureName and SchemaName. Wählen Sie StoredProcedureName aus, klicken Sie mit der rechten Maustaste, und wählen Sie Alle Vorkommen ändern aus.Select StoredProcedureName, right-click, and select Change All Occurrences. Geben Sie jetzt getCustomer ein – alle StoredProcedureName-Einträge ändern sich zu getCustomer.Now type getCustomer and all StoredProcedureName entries change to getCustomer.

    Codeausschnitt

  4. Ändern aller Vorkommen von SchemaName zu dbo.Change all occurrences of SchemaName to dbo.

  5. Der Codeausschnitt enthält Platzhalterparameter und Text, der aktualisiert werden muss.The snippet contains placeholder parameters and body text that needs updating. Die EXECUTE-Anweisung enthält auch Platzhaltertext, da noch nicht bekannt ist, wie viele Parameter in der Prozedur enthalten sein werden.The EXECUTE statement also contains placeholder text because it doesn't know how many parameters the procedure will have. Aktualisieren Sie den Codeausschnitt für dieses Tutorial so, dass er wie der folgende Code aussieht:For this tutorial update the snippet so it looks like the following code:

    -- Create a new stored procedure called 'getCustomer' in schema 'dbo'
    -- Drop the stored procedure if it already exists
    IF EXISTS (
    SELECT *
    FROM INFORMATION_SCHEMA.ROUTINES
    WHERE SPECIFIC_SCHEMA = N'dbo'
    AND SPECIFIC_NAME = N'getCustomer'
    )
    DROP PROCEDURE dbo.getCustomer
    GO
    -- Create the stored procedure in the specified schema
    CREATE PROCEDURE dbo.getCustomer
    @ID int
    -- add more stored procedure parameters here
    AS
    -- body of the stored procedure
    SELECT  c.CustomerId, 
    c.Name, 
    c.Location, 
    c.Email
    FROM dbo.Customers c
    WHERE c.CustomerId = @ID
    FOR JSON PATH
    
    GO
    -- example to execute the stored procedure we just created
    EXECUTE dbo.getCustomer 1
    GO
    
  6. Um die gespeicherte Prozedur zu erstellen und testweise auszuführen, drücken Sie F5.To create the stored procedure and give it a test run, press F5.

Die gespeicherte Prozedur ist jetzt erstellt, und der Bereich ERGEBNISSE zeigt den zurückgegebenen Kunden in JSON-Format an.The stored procedure is now created, and the RESULTS pane displays the returned customer in JSON. Um den formatierten JSON-Eintrag anzuzeigen, klicken Sie auf den zurückgegebenen Datensatz.To see formatted JSON, click the returned record.

Verwenden von „Definition einsehen“Use Peek Definition

Azure Data StudioAzure Data Studio bietet die Möglichkeit, mithilfe des Features „Definition einsehen“ eine Objektdefinition anzuzeigen.provides the ability to view an objects definition using the peek definition feature. In diesem Abschnitt wird eine zweite gespeicherte Prozedur erstellt und „Definition einsehen“ verwendet, um anzuzeigen, welche Spalten in einer Tabelle vorliegen, und schnell den Text der gespeicherten Prozedur zu erstellen.This section creates a second stored procedure and uses peek definition to see what columns are in a table to quickly create the body of the stored procedure.

  1. Öffnen Sie einen neuen Editor, indem Sie STRG+N drücken.Open a new editor by pressing Ctrl+N.

  2. Geben Sie im Editor sql ein, navigieren Sie mit der NACH-UNTEN-TASTE nach unten zu sqlCreateStoredProcedure, und drücken Sie die TAB-TASTE (oder die EINGABETASTE), um den Codeausschnitt mit der gespeicherten Prozedur zu laden.Type sql in the editor, arrow down to sqlCreateStoredProcedure, and press the Tab key (or Enter) to load the create stored procedure snippet.

  3. Geben Sie setCustomer als StoredProcedureName und dbo als SchemaName ein.Type in setCustomer for StoredProcedureName and dbo for SchemaName

  4. Ersetzen Sie die @param-Platzhalter durch die folgende Parameterdefinition:Replace the @param placeholders with the following parameter definition:

    @json_val nvarchar(max)
    
  5. Ersetzen Sie den Text der gespeicherten Prozedur durch den folgenden Code:Replace the body of the stored procedure with the following code:

    INSERT INTO dbo.Customers
    
  6. Klicken Sie in der Zeile INSERT, die Sie gerade eingefügt haben, mit der rechten Maustaste auf dbo.Customers, und wählen Sie Definition einsehen aus.In the INSERT line you just added, right-click dbo.Customers and select Peek Definition.

    Definition einsehen

  7. Die Tabellendefinition wird angezeigt, sodass Sie auf einen Blick erkennen können, welche Spalten sich in der Tabelle befinden.The table definition appears so you can quickly see what columns are in the table. Verwenden Sie die Spaltenliste als Referenz, um die Anweisungen für Ihre gespeicherte Prozedur ganz einfach zu erstellen.Refer to the column list to easily complete the statements for your stored procedure. Schließen Sie die zuvor hinzugefügte INSERT-Anweisung ab, um den Text der gespeicherten Prozedur vollständig anzugeben, und schließen Sie das Fenster „Definition einsehen“:Finish creating the INSERT statement you added previously to complete the body of the stored procedure, and close the peek definition window:

    INSERT INTO dbo.Customers (CustomerId, Name, Location, Email)
        SELECT CustomerId, Name, Location, Email
        FROM OPENJSON (@json_val)
        WITH(   CustomerId int, 
                Name nvarchar(50), 
                Location nvarchar(50), 
                Email nvarchar(50)
     )
    
  8. Löschen Sie den Befehl EXECUTE am Ende der Abfrage, oder kommentieren Sie sie aus.Delete (or comment out) the EXECUTE command at the bottom of the query.

  9. Die gesamte Anweisung sollte wie der folgende Code aussehen:The entire statement should look like the following code:

    -- Create a new stored procedure called 'setCustomer' in schema 'dbo'
    -- Drop the stored procedure if it already exists
    IF EXISTS (
    SELECT *
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE SPECIFIC_SCHEMA = N'dbo'
        AND SPECIFIC_NAME = N'setCustomer'
    )
    DROP PROCEDURE dbo.setCustomer
    GO
    -- Create the stored procedure in the specified schema
    CREATE PROCEDURE dbo.setCustomer
        @json_val nvarchar(max) 
    AS
        -- body of the stored procedure
        INSERT INTO dbo.Customers (CustomerId, Name, Location, Email)
        SELECT CustomerId, Name, Location, Email
        FROM OPENJSON (@json_val)
        WITH(   CustomerId int, 
                Name nvarchar(50), 
                Location nvarchar(50), 
                Email nvarchar(50)
        )
    GO
    
  10. Um die gespeicherte Prozedur setCustomer zu erstellen, drücken Sie F5.To create the setCustomer stored procedure, press F5.

Verwenden von „Abfrageergebnisse als JSON speichern“ zum Testen der gespeicherten Prozedur „setCustomer“Use save query results as JSON to test the setCustomer stored procedure

Die im vorherigen Abschnitt erstellte gespeicherte Prozedur setCustomer erfordert JSON-Daten für die Übergabe an den *@json_val* -Parameter.The setCustomer stored procedure created in the previous section requires JSON data be passed into the *@json_val* parameter. In diesem Abschnitt wird erläutert, wie Sie ordnungsgemäß formatierte JSON-Daten zum Übergeben an den Parameter erhalten, damit Sie die gespeicherte Prozedur testen können.This section shows how to get a properly formatted bit of JSON to pass into the parameter so you can test the stored procedure.

  1. Klicken Sie in der Randleiste SERVER mit der rechten Maustaste auf die Tabelle dbo.Customers, und klicken Sie auf SELECT TOP 1000 Rows.In the SERVERS sidebar right-click the dbo.Customers table and click SELECT TOP 1000 Rows.

  2. Wählen Sie in der Ergebnisansicht die erste Zeile aus, stellen Sie sicher, dass die gesamte Zeile ausgewählt ist (klicken Sie auf die Nummer 1 in der Spalte ganz links), und wählen Sie Als JSON speichern aus.Select the first row in the results view, make sure the entire row is selected (click the number 1 in the left-most column), and select Save as JSON.

  3. Ändern Sie den Ordner in einen leicht zu merkenden Speicherort (beispielsweise den Desktop), damit Sie die Datei später löschen können, und klicken Sie auf Speicherort.Change the folder to a location you'll remember so you can delete the file later (for example desktop) and click Save. Die JSON-formatierte Datei wird geöffnet.The JSON formatted file opens.

    Speichern als JSON

  4. Wählen Sie die JSON-Daten im Editor aus, und kopieren Sie sie.Select the JSON data in the editor and copy it.

  5. Öffnen Sie einen neuen Editor, indem Sie STRG+N drücken.Open a new editor by pressing Ctrl+N.

  6. Die oben genannten Schritte haben Ihnen gezeigt, wie Sie ganz einfach ordnungsgemäß formatierte Daten erhalten, um den Aufruf der Prozedur setCustomer abzuschließen.The previous steps show how you can easily get the properly formatted data to complete the call to the setCustomer procedure. Wie Sie sehen, verwendet der folgende Code das gleiche JSON-Format, aber mit neuen Kundeninformationen, sodass wir die Prozedur setCustomer testen können.You can see the following code uses the same JSON format with new customer details so we can test the setCustomer procedure. Die Anweisung enthält eine Syntax zum Deklarieren des Parameters und Ausführen der neuen get- und set-Prozeduren.The statement includes syntax to declare the parameter and run the new get and set procedures. Sie können die kopierten Daten aus dem vorherigen Abschnitt einfügen und bearbeiten, sodass sie dem folgenden Beispiel entsprechen. Sie können auch einfach die folgende Anweisung in den Abfrage-Editor einfügen.You can paste the copied data from the previous section and edit it so it is the same as the following example, or simply paste the following statement into the query editor.

    -- example to execute the stored procedure we just created
    declare @json nvarchar(max) =
    N'[
        {
            "CustomerId": 5,
            "Name": "Lucy",
            "Location": "Canada",
            "Email": "lucy0@adventure-works.com"
        }
    ]'
    
    EXECUTE dbo.setCustomer @json_val = @json
    GO
    
    EXECUTE dbo.getCustomer @ID = 5
    
  7. Führen Sie das Skript aus, indem Sie F5 drücken.Execute the script by pressing F5. Das Skript fügt einen neuen Kunden ein und gibt die neuen Kundeninformationen im JSON-Format zurück.The script inserts a new customer and returns the new customer's information in JSON format. Klicken Sie auf das Ergebnis, um eine formatierte Ansicht zu öffnen.Click the result to open a formatted view.

    Testergebnis

Nächste SchritteNext steps

In diesem Tutorial haben Sie Folgendes gelernt:In this tutorial, you learned how to:

  • Schnelles Suchen nach SchemaobjektenQuick search schema objects
  • Bearbeiten von TabellendatenEdit table data
  • Schreiben von T-SQL-Skripts mithilfe von CodeausschnittenWriting T-SQL script using snippets
  • Anzeigen von Datenbankobjektdetails mithilfe von „Definition einsehen“ und „Gehe zu Definition“Learn about database object details using Peek Definition and Go to Definition

Um zu erfahren, wie Sie das Widget für die fünf langsamsten Abfragen aktivieren, arbeiten Sie das nächste Tutorial durch:To learn how to enable the five slowest queries widget, complete the next tutorial: