Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Microsoft bietet Ihnen einen robusten Satz von Skriptdateibefehlen zum Ausführen und Steuern von SQL Server Migration Assistant (SSMA)-Aktivitäten. In den folgenden Abschnitten wird das gleiche detailiert.
Skriptdateibefehle
Die Konsolenanwendung verwendet bestimmte Standardmäßige Skriptdateibefehle, die in diesem Abschnitt aufgelistet werden.
Project-Befehle
Die Project-Befehle behandeln das Erstellen von Projekten, Öffnen, Speichern und Beenden von Projekten.
create-new-project-Befehl
Mit diesem Befehl wird ein neues SSMA-Projekt erstellt.
project-foldergibt den Ordner des Projekts an, der erstellt wird.project-namegibt den Namen des Projekts an. {string}overwrite-if-existsOptionales Attribut gibt an, ob ein vorhandenes Projekt überschrieben werden soll. {boolean}project-type: Optionales Attribut. Gibt den Projekttyp an, d. h.sql-server-2016,sql-server-2017,sql-server-2019,sql-server-2022,sql-server-2025odersql-azure. Der Standardwert lautetsql-server-2016.
Syntaxbeispiel
<create-new-project
project-folder="<project-folder>"
project-name="<project-name>"
overwrite-if-exists="<true/false>" (optional)
project-type=="<sql-server-2016 | sql-server-2017 | sql-server-2019 | sql-server-2022 | sql-server-2025 | sql-azure>"
/>
Attribut overwrite-if-exists ist false standardmäßig.
Attribut project-type ist sql-server-2016 standardmäßig.
open-project-Befehl
Mit diesem Befehl wird das Projekt geöffnet.
project-foldergibt den Ordner des Projekts an, der erstellt wird. Der Befehl schlägt fehl, wenn der angegebene Ordner nicht vorhanden ist. {string}project-namegibt den Namen des Projekts an. Der Befehl schlägt fehl, wenn das angegebene Projekt nicht vorhanden ist. {string}
Syntaxbeispiel
<open-project
project-folder="<project-folder>"
project-name="<project-name>"
/>
Hinweis
Die SSMA für SAP ASE-Konsolenanwendung unterstützt die Abwärtskompatibilität. Sie können es verwenden, um Projekte zu öffnen, die mit früherer Version von SSMA erstellt wurden.
save-project-Befehl
Mit diesem Befehl wird das Migrationsprojekt gespeichert.
Syntaxbeispiel
<save-project/>
close-project-Befehl
Mit diesem Befehl wird das Migrationsprojekt geschlossen.
Syntaxbeispiel
<close-project
if-modified="<save/error/ignore>" (optional)
/>
Attribut if-modified ist standardmäßig optional ignore .
Datenbankverbindungsbefehle
Mit den Befehlen "Datenbankverbindung" können Sie eine Verbindung mit der Datenbank herstellen.
Das Feature Browsen der Benutzeroberfläche wird in der Konsole nicht unterstützt.
Weitere Informationen finden Sie unter Erstellen von Skriptdateien.
connect-source-database-Befehl
Dieser Befehl führt eine Verbindung mit der Quelldatenbank aus und lädt allgemeine Metadaten der Quelldatenbank, aber nicht alle Metadaten.
Wenn die Verbindung mit der Quelle nicht hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.
Die Serverdefinition wird aus dem Namensattribut abgerufen, das für jede Verbindung im Serverabschnitt der Serververbindungsdatei oder der Skriptdatei definiert ist.
Syntaxbeispiel
<connect-source-database server="<server-unique-name>"/>
force-load-source/target-database-Befehl
Mit diesem Befehl werden die Quellmetadaten geladen, und es ist nützlich, offline an Migrationsprojekt zu arbeiten.
Wenn die Verbindung mit der Quelle/dem Ziel nicht hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.
Dieser Befehl erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.
Syntaxbeispiel
<force-load metabase="<source/target>" >
<metabase-object object-name="<object-name>"/>
</force-load>
reconnect-source-database-Befehl
Dieser Befehl stellt eine erneute Verbindung mit der Quelldatenbank her, lädt jedoch keine Metadaten im Gegensatz zum Befehl "Connect-source-database".
Wenn keine (erneute) Verbindung mit der Quelle hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.
Syntaxbeispiel
<reconnect-source-database server="<server-unique-name>"/>
connect-target-database-Befehl
Dieser Befehl stellt eine Verbindung mit der SQL Server-Zieldatenbank her und lädt nur allgemeine Metadaten der Zieldatenbank, jedoch nicht die Metadaten vollständig.
Wenn die Verbindung mit dem Ziel nicht hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.
Die Serverdefinition wird aus dem namensattribut abgerufen, das für jede Verbindung definiert ist, im Serverabschnitt der Serververbindungsdatei oder der Skriptdatei.
Syntaxbeispiel
<connect-target-database server="<server-unique-name>"/>
reconnect-target-database-Befehl
Dieser Befehl stellt eine erneute Verbindung mit der Zieldatenbank her, lädt jedoch keine Metadaten, im Gegensatz zum Befehl "Connect-target-database".
Wenn keine (erneute) Verbindung mit dem Ziel hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.
Syntaxbeispiel
<reconnect-target-database server="<server-unique-name>"/>
Befehle für Berichte
Die Befehle "Bericht" generieren Berichte über die Leistung verschiedener SSMA-Konsolenaktivitäten.
generate-assessment-report-Befehl
Dieser Befehl generiert Bewertungsberichte für die Quelldatenbank.
Wenn die Quelldatenbankverbindung vor dem Ausführen dieses Befehls nicht ausgeführt wird, wird ein Fehler generiert, und die Konsolenanwendung wird beendet.
Wenn während der Befehlsausführung keine Verbindung mit dem Quelldatenbankserver hergestellt werden kann, wird auch die Konsolenanwendung beendet.
conversion-report-folder: Gibt den Ordner an, in dem der Bewertungsbericht gespeichert werden kann. (optionales Attribut)object-name: Gibt die Objekte an, die für die Generierung von Bewertungsberichten berücksichtigt werden (unterstützt einzelne Objektnamen oder einen Gruppenobjektnamen).object-type: Gibt den Typ des Objekts an, das im Objektnamen-Attribut aufgerufen wird (wenn die Objektkategorie angegeben ist, lautet der Objekttyp "category").conversion-report-overwrite: Gibt an, ob der Ordner "Bewertungsbericht" überschrieben werden soll, falls er bereits vorhanden ist.Standardwert: false. (optionales Attribut)
write-summary-report-to: Gibt den Pfad an, in dem der Bericht generiert wird.Wenn nur der Ordnerpfad erwähnt wird, wird die Datei anhand des Namens
AssessmentReport<n>.xmlerstellt. (optionales Attribut)Die Berichterstellung verfügt über zwei weitere Unterkategorien:
report-errors(="true/false", standardmäßig als "false" (optionale Attribute))verbose(="true/false", standardmäßig als "false" (optionale Attribute))
Syntaxbeispiel
<generate-assessment-report
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
assessment-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
/>
Oder:
<generate-assessment-report
assessment-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
>
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</generate-assessment-report>
Migrationsbefehle
Mit den Migrationsbefehlen wird das Zieldatenbankschema in das Quellschema konvertiert und Daten auf den Zielserver migriert.
convert-schema-Befehl
Mit diesem Befehl wird die Schemakonvertierung von der Quelle in das Zielschema ausgeführt.
Wenn die Quell- oder Zieldatenbankverbindung nicht ausgeführt wird, bevor dieser Befehl ausgeführt wird oder die Verbindung mit dem Quell- oder Zieldatenbankserver während der Befehlsausführung fehlschlägt, wird ein Fehler generiert, und die Konsolenanwendung wird beendet.
conversion-report-folder: Gibt den Ordner an, in dem der Bewertungsbericht gespeichert werden kann. (optionales Attribut)object-name: Gibt die Quellobjekte an, die für die Konvertierung des Schemas berücksichtigt werden (unterstützt einzelne Objektnamen oder einen Gruppenobjektnamen).object-type: Gibt den Typ des Objekts an, das im Objektnamen-Attribut aufgerufen wird (wenn die Objektkategorie angegeben ist, lautet der Objekttyp "category").conversion-report-overwrite: Gibt an, ob der Ordner "Bewertungsbericht" überschrieben werden soll, falls er bereits vorhanden ist.Standardwert: false. (optionales Attribut)
write-summary-report-to: Gibt den Pfad an, in dem der Zusammenfassungsbericht generiert wird.Wenn nur der Ordnerpfad erwähnt wird, wird die Datei anhand des Namens
SchemaConversionReport<n>.xmlerstellt. (optionales Attribut)Die Berichterstellung verfügt über zwei weitere Unterkategorien:
report-errors(="true/false", standardmäßig als "false" (optionale Attribute))verbose(="true/false", standardmäßig als "false" (optionale Attribute))
Syntaxbeispiel
<convert-schema
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
/>
Oder:
<convert-schema
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>"> (optional)
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</convert-schema>
migrate-data-Befehl
Mit diesem Befehl werden die Quelldaten zum Ziel migriert.
object-name: Gibt die Quellobjekte an, die für die Migration von Daten berücksichtigt werden (unterstützt einzelne Objektnamen oder einen Gruppenobjektnamen).object-type: Gibt den Typ des Objekts an, das im Objektnamen-Attribut aufgerufen wird (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").write-summary-report-to: Gibt den Pfad an, in dem der Bericht generiert wird.Wenn nur der Ordnerpfad erwähnt wird, wird die Datei anhand des Namens
DataMigrationReport<n>.xmlerstellt. (optionales Attribut)Die Berichterstellung verfügt über zwei weitere Unterkategorien:
report-errors(="true/false", standardmäßig als "false" (optionale Attribute))verbose(="true/false", standardmäßig als "false" (optionale Attribute))
Syntaxbeispiel
<migrate-data
write-summary-report-to="<file-name/folder-name>"
report-errors="<true/false>" verbose="<true/false>">
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<data-migration-connection
source-use-last-used="true"/source-server="<server-unique-name>"
target-use-last-used="true"/target-server="<server-unique-name>"/>
</migrate-data>
Oder:
<migrate-data
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>"
report-errors="<true/false>" verbose="<true/false>"/>
Befehl 'Migrationsvorbereitung'
Der Befehl "Migrationsvorbereitung" initiiert die Schemazuordnung zwischen der Quell- und Zieldatenbank.
Hinweis
Die Standardeinstellung für die Konsolenausgabe für die Migrationsbefehle ist der Ausgabebericht "Vollständig" ohne detaillierte Fehlerberichterstattung: Nur Zusammenfassung auf dem Stammknoten der Quellobjektstruktur.
map-schema-Befehl
Dieser Befehl stellt die Schemazuordnung der Quelldatenbank zum Zielschema bereit.
source-schemaGibt das zu migrierende Quellschema an.sql-server-schemaGibt das Zielschema an, zu dem das Quellschema migriert wird.
Syntaxbeispiel
<map-schema source-schema="<source-schema>"
sql-server-schema="<target-schema>"/>
Verwaltbarkeitsbefehle
Die Befehle "Verwaltbarkeit" helfen beim Synchronisieren der Zieldatenbankobjekte mit der Quelldatenbank.
Hinweis
Die Standardeinstellung für die Konsolenausgabe für die Migrationsbefehle ist der Ausgabebericht "Vollständig" ohne detaillierte Fehlerberichterstattung: Nur Zusammenfassung auf dem Stammknoten der Quellobjektstruktur.
synchronize-target-Befehl
Mit diesem Befehl werden die Zielobjekte mit der Zieldatenbank synchronisiert.
Wenn dieser Befehl für die Quelldatenbank ausgeführt wird, tritt ein Fehler auf.
Wenn die Zieldatenbankverbindung vor dem Ausführen dieses Befehls nicht ausgeführt wird oder die Verbindung mit dem Zieldatenbankserver während der Befehlsausführung fehlschlägt, wird ein Fehler generiert, und die Konsolenanwendung wird beendet.
object-name: Gibt die Zielobjekte an, die für die Synchronisierung mit der Zieldatenbank berücksichtigt werden (unterstützt einzelne Objektnamen oder einen Gruppenobjektnamen).object-type: Gibt den Typ des Objekts an, das im Objektnamen-Attribut aufgerufen wird (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").on-error: Gibt an, ob Synchronisierungsfehler als Warnungen oder Fehler angegeben werden sollen. Verfügbare Optionen bei Fehlerreport-total-as-warningreport-each-as-warningfail-script
report-errors-to: Gibt den Speicherort des Fehlerberichts für den Synchronisierungsvorgang an (optionales Attribut)Wenn nur der Ordnerpfad angegeben wird, wird eine Datei mit dem Namen
TargetSynchronizationReport.xmlerstellt.
Syntaxbeispiel
<synchronize-target
object-name="<object-name>"
on-error="<report-total-as-warning/report-each-as-warning/fail-script>" (optional)
report-errors-to="<file-name/folder-name>" (optional)
/>
Oder:
<synchronize-target
object-name="<object-name>"
object-type="<object-category>"/>
Oder:
<synchronize-target>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
</synchronize-target>
refresh-from-database-Befehl
Mit diesem Befehl werden die Quellobjekte aus der Datenbank aktualisiert.
Wenn dieser Befehl für die Zieldatenbank ausgeführt wird, wird ein Fehler generiert.
Dieser Befehl erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.
object-name: Gibt die Quellobjekte an, die für die Aktualisierung aus der Quelldatenbank berücksichtigt werden (unterstützt einzelne Objektnamen oder einen Gruppenobjektnamen).object-type: Gibt den Typ des Objekts an, das im Objektnamen-Attribut angegeben ist (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").on-error: Gibt an, ob Aktualisierungsfehler als Warnungen oder Fehler aufgerufen werden sollen. Verfügbare Optionen bei Fehlerreport-total-as-warningreport-each-as-warningfail-script
report-errors-to: Gibt den Speicherort des Fehlerberichts für den Synchronisierungsvorgang an (optionales Attribut)Wenn nur der Ordnerpfad angegeben wird, wird eine Datei mit dem Namen
SourceDBRefreshReport.xmlerstellt.
Syntaxbeispiel
<refresh-from-database
object-name="<object-name>"
on-error="<report-total-as-warning/
report-each-as-warning/
fail-script>" (optional)
report-errors-to="<file-name/folder-name>" (optional)
/>
Oder:
<refresh-from-database
object-name="<object-name>"
object-type="<object-category>" />
Oder:
<refresh-from-database>
<metabase-object object-name="<object-name>"/>
</refresh-from-database>
Skriptgenerierungsbefehle
Die Befehle der Skriptgenerierung führen duale Aufgaben aus: Sie helfen, die Konsolenausgabe in einer Skriptdatei zu speichern, und sie zeichnen die T-SQL-Ausgabe auf der Konsole oder einer Datei basierend auf dem von Ihnen angegebenen Parameter auf.
save-as-script-Befehl
Wird verwendet, um die Skripts der Objekte in einer Datei zu speichern, die erwähnt wird, wenn metabase=target. Dies ist eine Alternative zum Synchronisierungsbefehl, in dem die Skripts abgerufen und in der Zieldatenbank ausgeführt werden.
Dieser Befehl erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.
object-name: Gibt die Objekte an, deren Skripts gespeichert werden sollen (unterstützt einzelne Objektnamen oder einen Gruppenobjektnamen).object-type: Gibt den Typ des Objekts an, das im Objektnamen-Attribut aufgerufen wird (wenn die Objektkategorie angegeben ist, lautet der Objekttyp "category").metabase: Gibt an, ob es sich um die Quell- oder Zielmetabasis handelt.destination: Gibt den Pfad oder den Ordner an, in dem das Skript gespeichert werden muss. Wenn der Dateiname nicht angegeben wird, wird ein Dateiname im Format(object_name attribute value).outangegeben.overwrite: Wenn der Wert "wahr" ist, wird derselbe Dateiname überschrieben, wenn er existiert. Es kann die Werte (true/false) haben.
Syntaxbeispiel
<save-as-script
metabase="<source/target>"
object-name="<object-name>"
object-type="<object-category>"
destination="<file-name/folder-name>"
overwrite="<true/false>" (optional)
/>
Oder:
<save-as-script
metabase="<source/target>"
destination="<file-name/folder-name>"
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</save-as-script>
convert-sql-statement-Befehl
Mit diesem Befehl wird die SQL-Anweisung konvertiert.
contextGibt den Schemanamen an.destinationGibt an, ob die Ausgabe in einer Datei gespeichert werden soll.Wenn dieses Attribut nicht angegeben ist, wird die konvertierte T-SQL-Anweisung auf der Konsole angezeigt. (optionales Attribut)
conversion-report-folderGibt den Ordner an, in dem der Bewertungsbericht gespeichert werden kann. (optionales Attribut)conversion-report-overwriteGibt an, ob der Ordner "Bewertungsbericht" überschrieben werden soll, wenn er bereits vorhanden ist.Standardwert: false. (optionales Attribut)
write-converted-sql-toGibt den Dateiordnerpfad (oder) an, in dem die konvertierte T-SQL gespeichert werden soll. Wenn ein Ordnerpfad zusammen mit demsql-filesAttribut angegeben wird, verfügt jede Quelldatei über eine entsprechende T-SQL-Zieldatei, die unter dem angegebenen Ordner erstellt wurde. Wenn ein Ordnerpfad zusammen mit demsqlAttribut angegeben wird, wird der konvertierte T-SQL in eine Datei namens "Result.out" unter dem angegebenen Ordner geschrieben.sqlGibt die zu konvertierenden Sybase-SQL-Anweisungen an, eine oder mehrere Anweisungen können durch ein ";" getrennt werden.sql-filesGibt den Pfad der SQL-Dateien an, die in T-SQL-Code konvertiert werden müssen.write-summary-report-toGibt den Pfad an, in dem der Zusammenfassungsbericht generiert wird. Wenn nur der Ordnerpfad erwähnt wird, wird die Datei anhand des NamensConvertSQLReport.xmlerstellt. (optionales Attribut)Die Erstellung von Zusammenfassungsberichten umfasst zwei weitere Unterkategorien, nämlich:
report-errors (="true/false", mit Standard als "false" (optionale Attribute)).
ausführlich (="true/false", standardmäßig als "false" (optionale Attribute)).
Dieser Befehl erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.
Syntaxbeispiel
<convert-sql-statement
context="<database-name>.<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
destination="<stdout/file>" (optional)
write-converted-sql-to ="<file-name/folder-name>"
sql="SELECT 1 FROM DUAL;">
<output-window suppress-messages="<true/false>" />
</convert-sql-statement>
Oder:
<convert-sql-statement
context="<database-name>.<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
destination="<stdout/file>" (optional)
write-converted-sql-to ="<file-name/folder-name>"
sql-files="<folder-name>\*.sql"
/>
Oder:
<convert-sql-statement
context="<database-name>.<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
sql-files="<folder-name>\*.sql"
/>