Assistenten zum Generieren und Veröffentlichen von Skripts

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Sie können mit dem Assistenten zum Generieren und Veröffentlichen von Skripts Skripts zur Übertragung einer Datenbank zwischen Instanzen von SQL Server-Datenbank-Engine oder Azure SQL-Datenbankerstellen. Sie können Skripts für eine Datenbank auf einer Datenbank-Engine-Instanz im lokalen Netzwerk oder von SQL-Datenbank aus generieren. Die generierten Skripts können auf einer anderen Datenbank-Engine-Instanz oder von SQL-Datenbank aus ausgeführt werden. Sie können den Assistenten außerdem dazu verwenden, den Inhalt einer Datenbank direkt in einem Webdienst zu veröffentlichen, der mit den Datenbank-Veröffentlichungsdiensten erstellt wurde. Sie können Skripts für eine gesamte Datenbank oder für eine Auswahl bestimmter Objekte erstellen.

Ein ausführlicheres Tutorial zum Verwenden des Assistenten zum Generieren und Veröffentlichen von Skripts finden Sie unter Tutorial: Assistent zum Generieren von Skripts.

Vorbereitungen

Die Quell- und Zieldatenbank können sich auf SQL-Datenbankoder einer Instanz von Datenbank-Engine befinden, die mit SQL Server 2005 (9.x) oder höher ausgeführt wird.

Veröffentlichen in einem gehosteten Dienst

Der Assistent zum Generieren und Veröffentlichen von Skripts kann nicht nur zum Erstellen von Skripts, sondern auch zum Veröffentlichen einer Datenbank in einem bestimmten gehosteten SQL Server-Webdienst verwendet werden. Das SQL Server Hosting Toolkit stellt auf der CodePlex-Website Datenbank-Veröffentlichungsdienste als freigegebenes Quellprojekt zur Verfügung. Das Projekt für Datenbank-Veröffentlichungsdienste kann von Webhostinganbietern zum Erstellen einer Gruppe von Webdiensten verwendet werden, mit denen deren Kunden Datenbanken problemlos für den Webdienst bereitstellen können. Weitere Informationen zum Herunterladen des SQL Server Hosting Toolkits finden Sie unter SQL Server Database Publishing Services.

Aktivieren Sie zum Veröffentlichen einer Datenbank in einem Webhostingdienst auf der Seite Skripterstellungsoptionen festlegen des Assistenten die Option In Webdienst veröffentlichen .

Berechtigungen

Zum Veröffentlichen einer Datenbank ist mindestens die Mitgliedschaft in der festen Datenbankrolle db_ddladmin in der Ursprungsdatenbank erforderlich. Zum Veröffentlichen eines Datenbankskripts in einer Instanz von SQL Server auf dem Hostinganbieter ist mindestens die Mitgliedschaft in der festen Datenbankrolle db_ddladmin auf der Zieldatenbank erforderlich.

Außerdem muss bei der Veröffentlichung mit dem Assistenten ein Benutzername mit zugehörigem Kennwort für den Zugriff auf das Konto beim Hostinganbieter angegeben werden. Die Zieldatenbank muss auf dem Hostinganbieter erstellt werden, bevor die Quelldatenbank veröffentlicht wird. Durch die Veröffentlichung werden Objekte in der bestehenden Datenbank überschrieben.

Verwenden des Assistenten zum Generieren und Veröffentlichen von Skripts

So erstellen und veröffentlichen Sie ein Skript

  1. Erweitern Sie im Objekt-Explorerden Knoten für die Instanz, die die Datenbank enthält, für die ein Skript erstellt werden soll.

  2. Zeigen Sie auf Tasks, und wählen Sie anschließend Skripts generieren aus.

    Assistent zum Generieren von Skripts

  3. Bearbeiten Sie die Dialogfenster des Assistenten:

Seite "Einführung"

Auf dieser Seite werden die Schritte zum Generieren oder Veröffentlichen eines Skripts beschrieben.

Diese Seite nicht mehr anzeigen – Diese Seite wird beim nächsten Starten des Assistenten zum Generieren und Veröffentlichen von Skriptsübersprungen.

Seite

Seite "Objekte auswählen"

Wählen Sie auf dieser Seite aus, welche Objekte in die von diesem Assistenten generierten Skripts eingeschlossen werden sollen. Auf der folgenden Seite des Assistenten können Sie diese Skripts am Speicherort Ihrer Wahl speichern oder sie verwenden, um Datenbankobjekte an einen Remotewebhostinganbieter zu veröffentlichen, bei dem die SQL Server-Datenbank-Veröffentlichungsdienste installiert sind.

Option „Skript für gesamte Datenbank erstellen“ : Wählen Sie diese Option aus, um Skripts für alle Objekte in der Datenbank zu generieren und ein Skript für die Datenbank selbst einzuschließen.

Skripts für alle Datenbanken

Bestimmte Datenbankobjekte auswählen: Wählen Sie diese Option aus, um den Assistenten auf die Generierung von Skripts für von Ihnen ausgewählte Objekte in der Datenbank einzuschränken:

  • Datenbankobjekte – Wählen Sie mindestens ein Objekt aus, das ins Skript eingeschlossen werden soll.

  • Alles auswählen – Aktiviert alle verfügbaren Kontrollkästchen.

  • Auswahl aufheben – Deaktiviert alle Kontrollkästchen. Sie müssen mindestens ein Datenbankobjekt auswählen, um den Vorgang fortsetzen zu können.

    Skriptspezifisch

Seite "Skripterstellungsoptionen festlegen"

Auf dieser Seite können Sie angeben, ob Skripts vom Assistenten am ausgewählten Speicherort gespeichert werden, oder ob damit Datenbankobjekte bei einem Remotewebhostinganbieter veröffentlicht werden. Für die Veröffentlichung müssen Sie Zugriff auf einen Webdienst haben, der mithilfe des Webdiensts „Datenbank-Veröffentlichungsdienste“ installiert wird.

Optionen – Wenn der Assistent Skripts an einem Speicherort Ihrer Wahl speichern soll, wählen Sie Skripts an einem bestimmten Speicherort speichernaus. Sie können die Skripts später für eine Datenbank-Engine-Instanz oder für SQL-Datenbankausführen. Wenn der Assistent die Datenbankobjekte in einem Remote-Webhostinganbieter veröffentlichen soll, wählen Sie In Webdienst veröffentlichenaus.

Skripts an einem bestimmten Speicherort speichern: Speichern Sie mindestens eine Transact-SQL-Skriptdatei an einem angegebenen Speicherort.

Als Notebook speichern

  • Als Notebook speichern : Speichern Sie das Skript in einer oder mehreren SQL-Dateien. Wählen Sie die Schaltfläche zum Durchsuchen ( ) aus, um einen Namen und Speicherort für die Datei anzugeben.

  • Als Skriptdatei speichern Speichert das Skript in einer oder mehreren SQL-Dateien. Wählen Sie die Schaltfläche zum Durchsuchen ( ) aus, um einen Namen und Speicherort für die Datei anzugeben. Aktivieren Sie das Kontrollkästchen Vorhandene Datei überschreiben , um die Datei zu ersetzen, wenn bereits eine Datei mit dem gleichen Namen vorhanden ist. Wählen Sie Einzelne Skriptdatei oder Einzelne Skriptdatei pro Objekt aus, um anzugeben, wie die Skripts generiert werden sollen. Wählen Sie Unicode-Text oder ANSI-Text aus, um die Art von Text anzugeben, die im Skript verwendet werden soll.

  • In Zwischenablage speichern – Speichert das Transact-SQL-Skript in die Zwischenablage.

  • In neuem Abfragefenster öffnen: Generiert das Skript in einem Fenster des Datenbank-Engine-Abfrage-Editors. Wenn kein Editor-Fenster geöffnet ist, wird ein neues Editor-Fenster als Skriptziel geöffnet.

  • Erweitert – Zeigt das Dialogfeld Erweiterte Veröffentlichungsoptionen an, in dem Sie erweiterte Optionen für die Skriptveröffentlichung auswählen können.

  • Anbieter – Wählen Sie den Anbieter aus, der die Verbindungsinformationen für den Webhostingdienst angibt, der die Datenbank, in der Sie die ausgewählten Objekte veröffentlichen möchten, hostet. Zur Auswahl eines Anbieters muss mindestens ein Anbieter im Dialogfeld Anbieter verwalten verfügbar sein.

  • Zieldatenbank – Wählt die Zieldatenbank aus, in der Sie die von Ihnen ausgewählten Objekte veröffentlichen möchten. Sie müssen vor dem Auswählen einer Zieldatenbank einen Anbieter auswählen.

Seite "Erweiterte Skripterstellungsoptionen"

Verwenden Sie diese Seite, um festzulegen, wie dieser Assistent Skripts generieren soll. Es sind viele verschiedene Optionen verfügbar. Die Optionen werden abgeblendet dargestellt, wenn sie von der SQL Server- oder SQL-Datenbank-Version, die in Datenbank-Engine-Typ angegeben ist, nicht unterstützt werden.

Erweiterte Optionen

Optionen – Sie können erweiterte Skriptoptionen angeben, indem Sie einen Wert aus der Liste der verfügbaren Einstellungen rechts neben den einzelnen Optionen auswählen.

Allgemein: Die folgenden Optionen gelten für das ganze Skript.

  • ANSI-Auffüllung – schließt ANSI PADDING ON in das Skript ein. Der Standardwert ist True.

  • An Datei anfügen – Im Falle von Truewird dieses Skript am Ende eines vorhandenen Skripts angefügt, angegeben auf der Seite Skripterstellungsoptionen festlegen . Im Falle von Falseüberschreibt das neue Skript ein vorheriges Skript. Der Standardwert ist False.

  • Vorhandensein von Objekten überprüfen: Wenn True festgelegt ist, wird für Ihre SQL-Objekte eine Überprüfung des Vorhandenseins vor dem Erstellen der CREATE-Anweisung hinzugefügt. Beispiele für solche Objekte sind Tabellen, Sichten, Funktionen oder gespeicherte Prozeduren. Die CREATE-Anweisung wird von einer IF-Anweisung umschlossen. Wenn Sie wissen, dass Ihr Ziel gut strukturiert ist, ist auch das Skript deutlich übersichtlicher. Wenn Sie NICHT verlangen, dass die Objekte im Ziel vorhanden sind, erhalten Sie eine Fehlermeldung. Der Standardwert ist False.

  • Skripterstellung bei einem Fehler fortsetzen: Bei False wird die Skripterstellung bei Auftreten eines Fehlers beendet. Bei True wird die Skripterstellung fortgesetzt. Der Standardwert ist False.

  • UDDTs in Basistypen konvertieren – Im Falle von Truewerden benutzerdefinierte Datentypen (UDDT) in die zugrunde liegenden Basisdatentypen konvertiert, die zu ihrer Erstellung verwendet wurden. Verwenden Sie True, wenn der UDDT in der Datenbank, in der das Skript ausgeführt wird, nicht vorhanden ist. Im Falle von Falsewerden UDDTs verwendet. Der Standardwert ist False.

  • Skript für abhängige Objekte generieren – Generiert ein Skript für jedes Objekt, das vorhanden sein muss, wenn das Skript für das ausgewählte Objekt ausgeführt wird. Der Standardwert ist True.

  • Beschreibende Header einschließen – Im Falle von Truewerden dem Skript beschreibende Kommentare hinzugefügt, mit denen das Skript für jedes Objekt in Abschnitte unterteilt wird. Der Standardwert ist False.

  • „IF NOT EXISTS“ einschließen – Im Falle von Trueenthält das Skript eine Anweisung, um zu überprüfen, ob das Objekt bereits in der Datenbank vorhanden ist, und versucht nicht, ein neues Objekt zu erstellen, wenn das Objekt bereits vorhanden ist. Der Standardwert ist False.

  • Einschränkungsnamen des Systems einschließen: Im Fall von FALSE(Standardwert) werden Einschränkungen, die automatisch in der Ursprungsdatenbank benannt wurden, in der Zieldatenbank automatisch umbenannt. Im Falle von Truehaben Einschränkungen in der Ursprungs- und der Zieldatenbank den gleichen Namen.

  • Nicht unterstützte Anweisungen einschließen – Im Falle von Falseenthält das Skript keine Anweisungen für Objekte, die unter der ausgewählten Serverversion bzw. dem ausgewählten Engine-Typ nicht unterstützt werden. Bei Trueenthält das Skript nicht unterstützte Objekte. Jede Anweisung für ein nicht unterstütztes Objekt enthält einen Kommentar, dass die Anweisung bearbeitet werden muss, bevor das Skript für die ausgewählte SQL Server-Version bzw. den ausgewählten Enginetyp ausgeführt werden kann. Der Standardwert ist False.

  • Objektnamen mit Schema qualifizieren – Schließt den Schemanamen im Namen der erstellten Objekte ein. Der Standardwert ist True.

  • Skriptbindung – Generiert ein Skript zum Binden von Standard- und Regelobjekten. Der Standardwert ist False. Weitere Informationen finden Sie unter CREATE DEFAULT (Transact-SQL) und CREATE RULE (Transact-SQL).

  • Skriptsortierung – Schließt Sortierungsinformationen ins Skript ein. Der Standardwert ist False. Weitere Informationen finden Sie unter Collation and Unicode Support.

  • Skripterstellung für Standard – Schließt Standardobjekte ein, die zum Festlegen von Standardwerten in Tabellenspalten verwendet wurden. Der Standardwert ist True. Weitere Informationen finden Sie unter CREATE DEFAULT (Transact-SQL&).

  • DROP und CREATE als Skript – Bei CREATE als Skript werden Transact-SQL-Anweisungen eingeschlossen, um Objekte zu erstellen. Bei DROP als Skript werden Transact-SQL-Anweisungen eingeschlossen, um Objekte zu löschen. Bei DROP und CREATE als Skript wird die Transact-SQL-DROP-Anweisung im Skript für jedes Objekt, für das ein Skript erstellt wird, eingeschlossen, gefolgt von der CREATE-Anweisung. Der Standardwert ist CREATE als Skript.

  • Skripterstellung für erweiterte Eigenschaften – Enthält erweiterte Eigenschaften im Skript, wenn das Objekt über erweiterte Eigenschaften verfügt. Der Standardwert ist True.

  • Skripterstellung für Engine-Typ – Erstellt ein Skript, das für den ausgewählten Typ von SQL-Datenbank bzw. den ausgewählten Typ einer Instanz der SQL Server-Datenbank-Engine ausgeführt werden kann. Für den angegebenen Typ nicht unterstützte Objekte werden nicht in das Skript eingeschlossen. Der Standardwert ist der Typ des Ursprungsservers.

  • Skripterstellung für Serverversion – Erstellt ein Skript, das für die ausgewählte Version von SQL Serverausgeführt werden kann. Neue Funktionen in einer Version können für eine Skripterstellung für frühere Versionen nicht verwendet werden. Der Standard ist die Version des Ursprungsservers.

  • Skripterstellung für Anmeldungen – Wenn das Objekt, für das ein Skript erstellt werden soll, ein Datenbankbenutzer ist, werden mit dieser Option die Anmeldungen erstellt, von denen der Benutzer abhängig ist. Der Standardwert ist False.

  • Skripterstellung für Berechtigungen auf Objektebene – Schließt Skripts ein, um die Berechtigung für Objekte in der Datenbank festzulegen. Der Standardwert ist False.

  • Skripterstellung für Statistiken – Wenn Skripterstellung für Statistikenfestgelegt ist, schließt diese Option die CREATE STATISTICS -Anweisung zum erneuten Erstellen der Statistiken für das Objekt ein. Mit der Option Skripterstellung für Statistiken und Histogramme können auch Histogramminformationen erstellt werden. Der Standardwert ist Keine Skripterstellung für Statistiken. Weitere Informationen finden Sie unter CREATE STATISTICS (Transact-SQL).

  • Skripterstellung für USE DATABASE – Fügt dem Skript die USE DATABASE -Anweisung hinzu. Die USE DATABASE -Anweisung muss enthalten sein, um sicherzustellen, dass Datenbankobjekte in der richtigen Datenbank erstellt werden. Wenn das Skript in einer anderen Datenbank verwendet werden soll, wählen Sie False aus, um die USE DATABASE -Anweisung auszulassen. Der Standardwert ist True. Weitere Informationen finden Sie unter USE (Transact-SQL).

  • Datentypen für Skripts: Wählt aus, was geskriptet werden soll: Nur Daten, Nur Schema oder beides. Der Standard ist Nur Schema.

Tabellen-/Sichtoptionen – Die folgenden Optionen gelten nur für Skripts für Tabellen oder Sichten.

  • Skript für Änderungsnachverfolgung erstellen – Die Änderungsnachverfolgung für Skripts wird in der Ursprungsdatenbank oder in den Tabellen in der Ursprungsdatenbank aktiviert. Der Standardwert ist False. Weitere Informationen finden Sie unter Informationen zur Änderungsnachverfolgung (SQL Server).

  • Skripterstellung für CHECK-Einschränkungen: Fügt dem Skript CHECK -Einschränkungen hinzu. Der Standardwert ist True. FürCHECK -Einschränkungen ist es erforderlich, dass Daten, die in eine Tabelle eingegeben werden, eine angegebene Bedingung erfüllen. Weitere Informationen finden Sie unter Unique Constraints and Check Constraints.

  • Skripterstellung für Datenkomprimierungsoptionen – Schließt Datenkomprimierungsoptionen ein, wenn sie in der Ursprungsdatenbank oder den Tabellen in der Ursprungsdatenbank konfiguriert werden. Weitere Informationen finden Sie unter Data Compression. Der Standardwert ist False.

  • Skripterstellung für Fremdschlüssel – Fügt dem Skript Fremdschlüssel hinzu. Der Standardwert ist True. Mit Fremdschlüsseln können Beziehungen zwischen Tabellen angezeigt und erzwungen werden.

  • Skripterstellung für Volltextindizes – Dient zur Skripterstellung für Volltextindizes. Der Standardwert ist False.

  • Skripterstellung für Indizes – Dient zur Skripterstellung für Indizes für die Tabellen. Der Standardwert ist True. Mit Indizes können Sie Daten schneller finden.

  • Skripterstellung für Primärschlüssel – Dient zur Skripterstellung für Primärschlüssel für die Tabellen. Der Standardwert ist True. Mit Primärschlüsseln kann jede Zeile einer Tabelle eindeutig identifiziert werden.

  • Skripterstellung für Trigger – Dient zur Skripterstellung für DML-Trigger für Tabellen. Der Standardwert ist False. Ein DML-Trigger ist eine Aktion, die so programmiert ist, dass sie bei Auftreten eines DML-Ereignisses (Data Manipulation Language, Datenbearbeitungssprache) auf dem Datenbankserver ausgeführt wird. Weitere Informationen finden Sie unter DML Triggers.

  • Skripterstellung für eindeutige Schlüssel – Dient zur Skripterstellung für eindeutige Schlüssel für Tabellen. Mit eindeutigen Schlüsseln kann verhindert werden, dass doppelte Daten eingegeben werden. Der Standardwert ist True. Weitere Informationen finden Sie unter Unique Constraints and Check Constraints.

Seite „Zusammenfassung“

GS-Zusammenfassung

Auf dieser Seite sind die Optionen zusammengefasst, die Sie in diesem Assistenten ausgewählt haben. Um eine Option zu ändern, wählen Sie Zurück aus. Um mit der Generierung von Skripts zu beginnen, die gespeichert oder veröffentlicht werden, wählen Sie Weiter aus.

Überprüfen Sie Ihre Auswahl – Zeigt die auf den einzelnen Seiten des Assistenten getroffene Auswahl an. Erweitern Sie einen Knoten, um die auf der betreffenden Seite ausgewählten Optionen anzuzeigen.

Seite „Skripts speichern oder veröffentlichen“

Mithilfe dieser Seite können Sie den Status des Assistenten überwachen.

Details – Zeigen Sie die Spalte Aktion an, um den Status des Assistenten anzuzeigen. Nach der Generierung speichert der Assistent die Skripts in einer Datei oder verwendet sie zum Veröffentlichen in einem Webdienst, abhängig von Ihrer Auswahl. Wenn diese Schritte alle abgeschlossen sind, wählen Sie den Wert in der Spalte Ergebnis aus, um das Ergebnis des entsprechenden Schritts anzuzeigen.

Bericht speichern: Wählen Sie diese Option, um den Fortschritt des Assistenten in eine Datei zu speichern.

Abbrechen: Wählen Sie diese Option, um den Assistenten vor Abschließen der Verarbeitung oder bei Auftreten eines Fehlers zu schließen.

Fertig stellen: Wählen Sie diese Option, um den Assistenten nach der Verarbeitung oder bei Auftreten eines Fehlers zu schließen.

Speichern von Skripts

Finish

Wenn alle Einstellungen richtig sind, wird die Konfiguration erfolgreich abgeschlossen.

Generieren von Skripts in Azure Synapse Analytics

Wenn die generiert Syntax bei Verwenden von „Skripterstellung als...“ nicht wie die Azure Synapse Analytics-Syntax aussieht, oder Sie eine Fehlermeldung erhalten, müssen Sie möglicherweise Ihre Optionen für die Skripterstellung in SQL Server Management Studio auf Azure Synapse Analytics festlegen.

Festlegen der Standardoptionen für die Skripterstellung auf SQL Data Warehouse

Damit Sie Skripts für Objekte mit der Azure Synapse Analytics -Syntax erstellen können, legen Sie die Standardoption für die Skripterstellung wie folgt auf Azure Synapse Analytics fest:

  1. Wählen Sie Tools und dann Optionen aus.
  2. Wählen Sie SQL Server-Objekt-Explorer und dann Skripterstellung aus.
  3. Legen Sie unter Versionsoptionen die Option Skripteinstellungen mit Quelle abgleichen auf False fest.
    1. Legen Sie Skript für den Datenbank-Engine-Typ auf Microsoft Azure SQL-Datenbankedition fest.
    2. Legen Sie für dedizierte SQL-Pools in Azure Synapse Analytics die Option Skript für die Datenbank-Engine-Edition auf Microsoft Azure SQL Data Warehouse Edition fest.
  4. Klicken Sie auf OK.

Generieren von Skripts für SQL Data Warehouse, wenn es nicht die Standardoption für die Skripterstellung ist

Wenn Sie Azure Synapse Analytics wie oben gezeigt als Standardoption für die Skripterstellung festlegen, können diese Anweisungen ignoriert werden. Wenn Sie jedoch andere Standardoptionen für die Skripterstellung verwenden, könnte ein Fehler auftreten. Um Fehler zu vermeiden, führen Sie folgende Schritte aus, um Skripts für Azure Synapse Analyticszu generieren und zu veröffentlichen:

  1. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf Ihren dedizierten SQL-Pool unter Datenbanken.
  2. Wählen Sie Skripts generieren aus.
  3. Wählen Sie die Objekte aus, für die Sie Skripts erstellen möchten.
  4. Wählen Sie in Skripterstellungsoptionen die Option Erweitert aus. Legen Sie unter Allgemein Folgendes fest:
    1. Skript für den Datenbank-Engine-Typ: Microsoft Azure SQL-Datenbank.
    2. Skript für die Datenbank-Engine-Edition: Microsoft Azure SQL Data Warehouse Edition.
  5. Wählen Sie Skripts speichern oder veröffentlichen und dann Fertig stellen aus.

Die in Schritt 4 festgelegten Optionen werden nicht gespeichert. Wenn Sie diese Optionen speichern möchten, befolgen Sie die Anweisungen in Festlegen der Standardoptionen für die Skripterstellung auf SQL Data Warehouse.

Weitere Informationen