Freigeben über


SqlPackage CLI-Referenz

SqlPackage ist ein Befehlszeilenprogramm für datenbankübertragbarkeit und -bereitstellungen in Windows-, Linux- und macOS-Umgebungen. Die SqlPackage-Befehlszeilenschnittstelle (CLI) analysiert jeden Aufruf für Parameter, Eigenschaften und SQLCMD-Variablen.

SqlPackage {parameters} {properties} {SQLCMD variables}
  • Parameter geben die auszuführende Aktion, die Quell- und Zieldatenbanken und andere allgemeine Einstellungen an.
  • Eigenschaften ändern das Standardverhalten einer Aktion.
  • SQLCMD-Variablen übergeben Werte an die SQLCMD-Variablen in der Quelldatei.

Wenn Sie einen SqlPackage-Befehl erstellen möchten, geben Sie eine Aktion und die zusätzlichen Parameter an. Fügen Sie optional Eigenschaften und SQLCMD-Variablen hinzu, um den Befehl weiter anzupassen.

Im folgenden Beispiel wird sqlPackage verwendet, um eine .dacpac Datei des aktuellen Datenbankschemas zu erstellen:

SqlPackage /Action:Extract /TargetFile:"C:\sqlpackageoutput\output_current_version.dacpac" \
 /SourceServerName:"localhost" /SourceDatabaseName:"Contoso" \
 /p:IgnoreUserLoginMappings=True /p:Storage=Memory

Dies sind die Parameter aus diesem Beispiel:

  • /Action:Extract
  • /TargetFile:"C:\sqlpackageoutput\output_current_version.dacpac"
  • /SourceServerName:"localhost"
  • /SourceDatabaseName:"Contoso"

Dies sind die Eigenschaften aus diesem Beispiel:

  • /p:IgnoreUserLoginMappings=True
  • /p:Storage=Memory

SqlPackage-Aktionen

Maßnahme Description
Version Gibt die Buildnummer der SqlPackage-Anwendung zurück.
Extrahieren Erstellt eine Datenebenenanwendungsdatei (.dacpac), die das Schema oder das Schema und Benutzerdaten aus einer verbundenen SQL-Datenbank enthält.
veröffentlichen Aktualisiert inkrementell ein Datenbankschema, um dem Schema einer Quelldatei .dacpac zu entsprechen. Wenn die Datenbank nicht auf dem Server vorhanden ist, erstellt der Veröffentlichungsvorgang sie. Andernfalls wird eine vorhandene Datenbank aktualisiert.
Exportieren Exportiert eine verbundene SQL-Datenbank , einschließlich Datenbankschema und Benutzerdaten, in eine BACPAC-Datei (.bacpac).
Importieren von Importiert die Schema- und Tabellendaten aus einer BACPAC-Datei in eine neue Benutzerdatenbank.
DeployReport- Erstellt einen XML-Bericht, der die Änderungen darstellt, die eine Veröffentlichungsaktion ausführen würde.
DriftReport- Erstellt einen XML-Bericht, der die Änderungen darstellt, die seit der letzten Registrierung auf eine registrierte Datenbank angewendet wurden.
Skript- Erstellt ein inkrementelles Transact-SQL-Updateskript, durch das das Schema eines Ziels aktualisiert wird, sodass es dem Schema einer Quelle entspricht.

Anmerkung

Während Microsoft Entra ID der neuen Namen für Azure Active Directory (Azure AD)ist, um Unterbrechungen vorhandener Umgebungen zu verhindern, verbleibt Azure AD weiterhin in einigen hartcodierten Elementen wie UI-Feldern, Verbindungsanbietern, Fehlercodes und Cmdlets. In diesem Artikel sind die beiden Namen austauschbar.

Parameter

Einige Parameter werden zwischen den SqlPackage-Aktionen gemeinsam verwendet. In der folgenden Tabelle sind die Parameter zusammengefasst. Weitere Informationen finden Sie unter den Links in der Tabellenüberschrift, um die jeweiligen Aktionsseiten zu besuchen.

Parameter Kurzform Extrahieren veröffentlichen Exportieren Importieren von DeployReport- DriftReport- Skript-
/AccessToken: /at Yes Yes Yes Yes Yes Yes Yes
/ClientId: /cid Nein Yes Nein Nein Nein Nein Nein
/DeployScriptPath: /dsp Nein Yes Nein Nein Nein Nein Yes
/DeployReportPath: /drp Nein Yes Nein Nein Nein Nein Yes
/Diagnostics: /d Yes Yes Yes Yes Yes Yes Yes
/DiagnosticsFile: /df Yes Yes Yes Yes Yes Yes Yes
/DiagnosticsPackageFile: /dpf Nein Yes Nein Yes Nein Nein Nein
/MaxParallelism: /mp Yes Yes Yes Yes Yes Yes Yes
/OutputPath: /op Nein Nein Nein Nein Yes Yes Yes
/OverwriteFiles: /of Yes Yes Yes Nein Yes Yes Yes
/Profile: /pr Nein Yes Nein Nein Yes Nein Yes
/Properties: /p Yes Yes Yes Yes Yes Nein Yes
/Quiet: /q Yes Yes Yes Yes Yes Yes Yes
/Secret: /secr Nein Yes Nein Nein Nein Nein Nein
/SourceConnectionString: /scs Yes Yes Yes Nein Yes Nein Yes
/SourceDatabaseName: /sdn Yes Yes Yes Nein Yes Nein Yes
/SourceEncryptConnection: /sec Yes Yes Yes Nein Yes Nein Yes
/SourceFile: /sf Nein Yes Nein Yes Yes Nein Yes
/SourcePassword: /sp Yes Yes Yes Nein Yes Nein Yes
/SourceServerName: /ssn Yes Yes Yes Nein Yes Nein Yes
/SourceTimeout: /st Yes Yes Yes Nein Yes Nein Yes
/SourceTrustServerCertificate: /stsc Yes Yes Yes Nein Yes Nein Yes
/SourceUser: /su Yes Yes Yes Nein Yes Nein Yes
/TargetConnectionString: /tcs Nein Nein Nein Yes Yes Yes Yes
/TargetDatabaseName: /tdn Nein Yes Nein Yes Yes Yes Yes
/TargetEncryptConnection: /tec Nein Yes Nein Yes Yes Yes Yes
/TargetFile: /tf Yes Nein Yes Nein Yes Nein Yes
/TargetPassword: /tp Nein Yes Nein Yes Yes Yes Yes
/TargetServerName: /tsn Nein Yes Nein Yes Yes Yes Yes
/TargetTimeout: /tt Nein Yes Nein Yes Yes Yes Yes
/TargetTrustServerCertificate: /ttsc Nein Yes Nein Yes Yes Yes Yes
/TargetUser: /tu Nein Yes Nein Yes Yes Yes Yes
/TenantId: /tid Yes Yes Yes Yes Yes Yes Yes
/UniversalAuthentication: /ua Yes Yes Yes Yes Yes Yes Yes
/Variables: /v Nein Nein Nein Nein Yes Nein Yes

Eigenschaften

SqlPackage-Aktionen unterstützen viele Eigenschaften, um das Standardverhalten einer Aktion zu ändern. Fügen Sie /p:PropertyName=Value der Befehlszeile hinzu, um optional Eigenschaften zu verwenden. Sie können mehrere Eigenschaften angeben und einige Eigenschaften mehrmals angeben. Sie können z. B. verwenden /p:TableData=Product /p:TableData=ProductCategory. Weitere Informationen zu Eigenschaften finden Sie auf den jeweiligen Aktionsseiten.

SQLCMD-Variablen

Sie können SQLCMD-Variablen in einer .dacpac Datei aus einem SQL-Projekt erstellen. Legen Sie diese Variablen während der Bereitstellung mithilfe von SqlPackage Publish oder Script fest. Weitere Informationen zum Hinzufügen von SQLCMD-Variablen zu einem SQL-Projekt finden Sie unter der Erweiterung SQL-Datenbankprojekte.

Hilfsbefehle

Version

Zeigt die sqlpackage-Version als Buildnummer an. Verwenden Sie sie in interaktiven Eingabeaufforderungen und in automatisierten Pipelines.

SqlPackage /Version

Hilfe

Verwenden oder /help:True anzeigen von /? SqlPackage-Verwendungsinformationen.

SqlPackage /?

Verwenden Sie für Parameter- und Eigenschaftsinformationen, die für eine bestimmte Aktion spezifisch sind, zusätzlich zum Parameter dieser Aktion den Hilfeparameter.

SqlPackage /Action:Publish /?

Ausgangscodes

SqlPackage-Befehle geben die folgenden Exitcodes zurück:

  • 0 = Erfolg
  • nonzero = failure