Freigeben über


Skriptobjekte in SQL Server Management Studio

In diesem Lernprogramm lernen Sie, Transact-SQL (T-SQL)-Skripts für verschiedene Objekte in SQL Server Management Studio (SSMS) zu generieren. In diesem Lernprogramm finden Sie Beispiele zum Skripten der folgenden Objekte:

  • Abfragen, die auftreten, wenn Sie Aktionen innerhalb der GUI ausführen
  • Datenbanken mit zwei Methoden („Skript erstellen als“ und „Skript generieren“)
  • Tabellen
  • Gespeicherte Prozeduren
  • Erweiterte Ereignisse

Wenn Sie ein objekt im Objekt-Explorer skripten möchten, klicken Sie mit der rechten Maustaste darauf, und wählen Sie die Option "Skriptobjekt als " aus. Dieses Lernprogramm zeigt Ihnen den Prozess.

Voraussetzungen

Zur Durchführung dieses Tutorials benötigen Sie SQL Server Management Studio, Zugriff auf einen Server, auf dem SQL-Server ausgeführt wird, und eine AdventureWorks-Datenbank.

Anweisungen zum Wiederherstellen von Datenbanken in SSMS finden Sie hier: Wiederherstellen einer Datenbank.

Skriptabfragen aus der GUI

Sie können den zugeordneten T-SQL-Code für eine Aufgabe generieren, wenn Sie die GUI in SSMS verwenden, um ihn abzuschließen. Die folgenden Beispiele zeigen, wie Dies geschieht, wenn Sie eine Datenbank sichern und das Transaktionsprotokoll verkleinern. Diese Schritte können auf jede Aktion angewendet werden, die über die GUI abgeschlossen wird.

Skript-Erstellung in T-SQL beim Sichern einer Datenbank

  1. Stellen Sie eine Verbindung mit einem Server her, auf dem SQL Server ausgeführt wird.

  2. Erweitern Sie den Knoten Datenbanken.

  3. Klicken Sie mit der rechten Maustaste auf die Datenbank AdventureWorks2022>Tasks>Back Up:

    Sichern einer Datenbank

  4. Konfigurieren Sie die Sicherung wie gewünscht. Für dieses Tutorial bleibt alles auf Standard. Alle im Fenster vorgenommenen Änderungen spiegeln jedoch auch das Skript wider.

  5. Wählen Sie Skript>Skript für Aktion im Fenster „Neue Abfrage“ schreiben:

    Skriptdatenbanksicherung – Skriptaktion

  6. Überprüfen Sie das im Abfragefenster aufgefüllte T-SQL.Review the T-SQL populated in the query window.

    Skriptdatenbanksicherung – T-SQL überprüfen

  7. Wählen Sie "Ausführen" aus, um die Abfrage auszuführen, um die Datenbank über T-SQL zu sichern.

T-SQL-Skripts beim Verkleinern des Transaktionsprotokolls

  1. Klicken Sie mit der rechten Maustaste auf die Datenbank "AdventureWorks2022>Tasks>Shrink>Files":

    Verkleinern von Dateien

  2. Wählen Sie "Protokoll" aus der Dropdown-Liste Dateityp aus:

    Transaktionsprotokoll verkleinern

  3. Wählen Sie Skript und Skriptaktion in Zwischenablage aus:

    Skript in die Zwischenablage kopieren

  4. Öffnen Sie ein Fenster "Neue Abfrage" , und fügen Sie es ein. (Klicken Sie mit der rechten Maustaste in das Fenster. Wählen Sie dann "Einfügen" aus.)

    Skript einfügen

  5. Wählen Sie "Ausführen" aus, um die Abfrage auszuführen und das Transaktionsprotokoll zu verkleinern.

Skriptdatenbanken

Im folgenden Abschnitt erfahren Sie, wie Sie die Datenbank mithilfe der Optionen "Skript als " und " Skript generieren " skripten können. Mithilfe der Option Skript erstellen als werden die Datenbank und die zugehörigen Konfigurationsoptionen neu erstellt. Sie können sowohl das Schema als auch die Daten skripten, indem Sie die Option "Skripts generieren " verwenden. In diesem Abschnitt erstellen Sie zwei neue Datenbanken. Sie verwenden die Option Skript erstellen als, um AdventureWorks2022a zu erstellen. Sie verwenden die Option "Skripts generieren ", um AdventureWorks2022b zu erstellen.

Eine Datenbank mit der Option "Skript" skripten

  1. Stellen Sie eine Verbindung mit einem Server her, auf dem SQL Server ausgeführt wird.

  2. Erweitern Sie den Knoten Datenbanken.

  3. Klicken Sie mit der rechten Maustaste auf die Datenbank AdventureWorks2022>Skript für Datenbank erstellen als>Erstellen in>Neues Abfrage-Editor-Fenster:

    Skriptdatenbank

  4. Überprüfen Sie die Datenbankerstellungsabfrage im Fenster:

    Erstelltes Skript für Datenbank Mit dieser Option werden nur die Datenbankkonfigurationsoptionen ausgegeben.

  5. Wählen Sie auf der Tastatur STRG+F aus, um das Dialogfeld " Suchen " zu öffnen. Wählen Sie den Abwärtspfeil aus, um die Option "Ersetzen" zu öffnen. Geben Sie in der obersten Find-Zeile "AdventureWorks2022" und in der untersten Zeile "Ersetzen" "AdventureWorks2022a" ein.

  6. Wählen Sie "Alle ersetzen " aus, um alle Instanzen von AdventureWorks2022 durch AdventureWorks2022a zu ersetzen.

    Suchen und Ersetzen

  7. Wählen Sie "Ausführen" aus, um die Abfrage auszuführen und ihre neue AdventureWorks2022a-Datenbank zu erstellen.

Erstellen einer Datenbank mithilfe der Option "Skripte generieren"

  1. Stellen Sie eine Verbindung mit einem Server her, auf dem SQL Server ausgeführt wird.

  2. Erweitern Sie den Knoten Datenbanken.

  3. Klicken Sie mit der rechten Maustaste auf AdventureWorks2022>Tasks>Generate Scripts:

    Generieren von Skripts für Datenbanken

  4. Die Seite Einführung wird geöffnet. Wählen Sie "Weiter" aus, um die Seite "Ausgewählte Objekte " zu öffnen. Sie können die gesamte Datenbank oder bestimmte Objekte in der Datenbank auswählen. Wählen Sie Skripterstellung für gesamte Datenbank und alle Datenbankobjekte aus.

    Generieren von Skripts für Objekte

  5. Wählen Sie Weiter aus, um die Seite Skripterstellungsoptionen festlegen zu öffnen. Hier können Sie konfigurieren, wo das Skript gespeichert werden soll, und einige weitere erweiterte Optionen.

    a) Wählen Sie "In neuem Abfragefenster speichern" aus.

    b. Wählen Sie "Erweitert" aus, und stellen Sie sicher, dass diese Optionen festgelegt sind:

    • Skripterstellung für Statistiken ist auf Skripterstellung für Statistiken festgelegt.
    • Datentypen, für die ein Skript erstellt wird ist auf Nur Schema festgelegt.
    • Skripterstellung für Indizes ist auf Wahr festgelegt.

    Skriptobjekte

    Hinweis

    Sie können die Daten für die Datenbank skripten, wenn Sie "Schema" und "Daten " für die Option " Datentypen für Skript" auswählen. Dies ist jedoch nicht ideal für große Datenbanken. Es kann mehr Arbeitsspeicher in Anspruch nehmen, als SSMS zuordnen kann. Diese Einschränkung ist für kleine Datenbanken in Ordnung. Wenn Sie Daten für eine größere Datenbank verschieben möchten, verwenden Sie den Import- und Export-Assistenten.

  6. Wählen Sie OK und anschließend Weiter aus.

  7. Wählen Sie "Weiter" in der Zusammenfassung aus. Wählen Sie dann erneut "Weiter" aus, um das Skript in einem Fenster "Neue Abfrage " zu generieren.

  8. Öffnen Sie auf der Tastatur das Dialogfeld " Suchen " (STRG+F). Wählen Sie den Abwärtspfeil aus, um die Option "Ersetzen" zu öffnen. Geben Sie in der oberen Suchen-Zeile AdventureWorks2022 ein. Geben Sie in der untersten Zeile ErsetzenAdventureWorks2022b ein.

  9. Wählen Sie "Alle ersetzen " aus, um alle Instanzen von AdventureWorks2022 durch AdventureWorks2022b zu ersetzen.

    AdventureWorks 2016

  10. Wählen Sie "Ausführen" aus, um die Abfrage auszuführen und die neue AdventureWorks2022b-Datenbank zu erstellen.

Erstellen von Skripts für Tabellen

In diesem Abschnitt wird beschrieben, wie Tabellen aus Ihrer Datenbank herauszuskripten sind. Mithilfe dieser Option können Sie entweder die Tabelle erstellen oder die Tabelle löschen und neu erstellen. Sie können diese Option auch verwenden, um die T-SQL zu skripten, die dem Ändern der Tabelle zugeordnet ist. Ein Beispiel sind Einfügungen in die Tabelle oder Aktualisierungen der Tabelle. In diesem Abschnitt legen Sie eine Tabelle ab und erstellen sie dann erneut.

  1. Stellen Sie eine Verbindung mit einem Server her, auf dem SQL Server ausgeführt wird.

  2. Erweitern Sie den Knoten Datenbanken.

  3. Erweitern Sie Ihren AdventureWorks2022-Datenbankknoten.

  4. Erweitern Sie den Knoten Tabellen.

  5. Klicken Sie mit der rechten Maustaste auf dbo.ErrorLog>Skript für Tabelle erstellen als>LÖSCHEN und NEU ERSTELLEN in>Neues Abfrage-Editor-Fenster:

    Skripttabelle

  6. Wählen Sie "Ausführen" aus, um die Abfrage auszuführen. Diese Aktion legt die Fehlerprotokolltabelle ab und erstellt sie erneut.

    Hinweis

    Die Fehlerprotokolltabelle ist in der AdventureWorks2022 Datenbank standardmäßig leer. Sie verlieren also keine Daten, indem Sie die Tabelle ablegen. Wenn Sie jedoch diese Schritte in einer Tabelle ausführen, die Daten enthält, führt dies zu Datenverlust.

Erstellen von Skripts für gespeicherte Prozeduren

In diesem Abschnitt erfahren Sie, wie Sie eine gespeicherte Prozedur löschen und neu erstellen.

  1. Stellen Sie eine Verbindung mit einem Server her, auf dem SQL Server ausgeführt wird.

  2. Erweitern Sie den Knoten Datenbanken.

  3. Erweitern Sie Ihren Programmierungsknoten.

  4. Erweitern Sie den Knoten "Gespeicherte Prozedur".

  5. Klicken Sie mit der rechten Maustaste auf die gespeicherte Prozedur dbo.uspGetBillOfMaterials>Skript für gespeicherte Prozedur erstellen als>LÖSCHEN und NEU ERSTELLEN in>Neues Abfrage-Editor-Fenster:

    Gespeicherte Skriptprozeduren

Erstellen von Skripts für erweiterte Ereignisse

In diesem Abschnitt wird beschrieben, wie erweiterte Ereignisse geskriptet werden.

  1. Stellen Sie eine Verbindung mit einem Server her, auf dem SQL Server ausgeführt wird.

  2. Erweitern Sie den Knoten Verwaltung.

  3. Erweitern Sie den Knoten Erweiterte Ereignisse.

  4. Erweitern Sie den Knoten Sitzungen.

  5. Klicken Sie mit der rechten Maustaste auf die gewünschte erweiterte Sitzung >Skript für Sitzung erstellen als>ERSTELLEN in>Neues Abfrage-Editor-Fenster:

    Sitzung mit dem erweiterten neuen Abfrage-Editor-Fenster

  6. Ändern Sie im Fenster "Neuer Abfrage-Editor" den neuen Namen der Sitzung von system_health in system_health2. Wählen Sie "Ausführen" aus, um die Abfrage auszuführen.

  7. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf Sitzungen. Wählen Sie "Aktualisieren" aus, um Ihre neue erweiterte Ereignissitzung anzuzeigen. Das grüne Symbol neben der Sitzung zeigt an, dass die Sitzung ausgeführt wird. Das rote Symbol gibt an, dass die Sitzung beendet wird.

    Neue erweiterte Ereignissitzung

    Hinweis

    Sie können die Sitzung starten, indem Sie mit der rechten Maustaste darauf klicken und "Start" auswählen. Dies ist jedoch eine Kopie der bereits ausgeführten system_health Sitzung, sodass Sie diesen Schritt überspringen können. Sie können die Kopie der erweiterten Ereignissitzung löschen: Klicken Sie mit der rechten Maustaste darauf, und wählen Sie "Löschen" aus.

Nächste Schritte

Die beste Möglichkeit, sich mit SSMS vertraut zu machen, ist die praktische Vorgehensweise. Dieses Tutorial und die Artikel zu Vorgehensweisen unterstützen Sie bei der Verwendung der verschiedenen Features, die in SSMS verfügbar sind. In diesen Artikeln erfahren Sie, wie Sie die Komponenten von SSMS verwalten und wie Sie die Features finden, die Sie regelmäßig verwenden.