Dela via


SqlPackage CLI-referens

SqlPackage är ett kommandoradsverktyg för databasportabilitet och distributioner i Windows-, Linux- och macOS-miljöer. SqlPackage-kommandoradsgränssnittet (CLI) parsar varje anrop för parametrar, egenskaper och SQLCMD-variabler.

SqlPackage {parameters} {properties} {SQLCMD variables}
  • Parametrar används för att ange vilken åtgärd som ska utföras, käll- och måldatabaserna och andra allmänna inställningar.
  • Egenskaper används för att ändra standardbeteendet för en åtgärd.
  • SQLCMD-variabler används för att skicka värden till SQLCMD-variablerna i källfilen.

Om du vill skapa ett SqlPackage-kommando måste du ange en åtgärd och dess ytterligare parametrar. Du kan också lägga till egenskaper och SQLCMD-variabler för att ytterligare anpassa kommandot.

I följande exempel används SqlPackage för att skapa en .dacpac-fil med det aktuella databasschemat:

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

I det exemplet var parametrarna:

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

I det exemplet var egenskaperna:

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

SqlPackage-åtgärder

  • Version: Returnerar versionsnumret för SqlPackage-programmet.

  • Extrahera: Skapar en fil för datanivåprogram (.dacpac) som innehåller schemat eller schemat och användardata från en ansluten SQL-databas.

  • Publicera: Uppdaterar inkrementellt ett databasschema så att det matchar schemat för en .dacpac-källfil. Om databasen inte finns på servern skapar publiceringsåtgärden den. Annars uppdateras en befintlig databas.

  • Exportera: Exporterar en ansluten SQL-databas – inklusive databasschema och användardata – till en BACPAC-fil (.bacpac).

  • Importera: Importerar schema- och tabelldata från en BACPAC-fil till en ny användardatabas.

  • DeployReport: Skapar en XML-rapport som representerar de ändringar som en publiceringsåtgärd skulle göra.

  • DriftReport: Skapar en XML-rapport som representerar de ändringar som tillämpats på en registrerad databas sedan den senast registrerades.

  • Script: Skapar ett Transact-SQL inkrementellt uppdateringsskript som uppdaterar schemat för ett mål så att det matchar schemat för en källa.

Not

Även om Microsoft Entra ID är det nya namnet för Azure Active Directory (Azure AD), för att förhindra avbrott i befintliga miljöer, förblir Azure AD fortfarande i vissa hårdkodade element som gränssnittsfält, anslutningsproviders, felkoder och cmdletar. I den här artikeln är de två namnen utbytbara.

Parametrar

Vissa parametrar delas mellan SqlPackage-åtgärderna. Nedan visas en tabell som sammanfattar parametrarna. Klicka på de specifika åtgärdssidorna om du vill ha mer information.

Parameter Kort formulär Extrahera Publicera Exportera Importera DeployReport DriftReport Skript
/AccessToken: /at x x x x x x x
/ClientId: /cid x
/DeployScriptPath: /dsp x x
/DeployReportPath: /drp x x
/Diagnostics: /d x x x x x x x
/DiagnosticsFile: /df x x x x x x x
/DiagnosticsPackageFile: /dpf x x
/MaxParallelism: /mp x x x x x x x
/OutputPath: /op x x x
/OverwriteFiles: /of x x x x x x
/Profile: /pr x x x
/Properties: /p x x x x x x
/Quiet: /q x x x x x x x
/Secret: /secr x
/SourceConnectionString: /scs x x x x x
/SourceDatabaseName: /sdn x x x x x
/SourceEncryptConnection: /sek x x x x x
/SourceFile: /sf x x x x
/SourcePassword: /sp x x x x x
/SourceServerName: /ssn x x x x x
/SourceTimeout: /st x x x x x
/SourceTrustServerCertificate: /stsc x x x x x
/SourceUser: /su x x x x x
/TargetConnectionString: /tcs x x x x
/TargetDatabaseName: /tdn x x x x x
/TargetEncryptConnection: /tec x x x x x
/TargetFile: /tf x x x x
/TargetPassword: /tp x x x x x
/TargetServerName: /tsn x x x x x
/TargetTimeout: /tt x x x x x
/TargetTrustServerCertificate: /ttsc x x x x x
/TargetUser: /tu x x x x x
/TenantId: /tid x x x x x x x
/UniversalAuthentication: /ua x x x x x x x
/Variables: /v x x

Egenskaper

SqlPackage-åtgärder stöder ett stort antal egenskaper för att ändra standardbeteendet för en åtgärd. Den valfria användningen av egenskaper utförs genom att lägga till /p:PropertyName=Value på kommandoraden. Flera egenskaper kan anges och vissa egenskaper kan anges mer än en gång (t.ex. /p:TableData=Product /p:TableData=ProductCategory). Mer information om egenskaper finns på de specifika åtgärdssidorna.

SQLCMD-variabler

SQLCMD-variabler kan byggas in i en .dacpac-fil från ett SQL-projekt och sedan ställas in under distributionen med SqlPackage Publicera eller Script. Mer information om hur du lägger till SQLCMD-variabler i ett SQL-projekt finns i dokumentationen om SQL-projekt.

Verktygskommandon

Version

Visar sqlpackage-versionen som ett versionsnummer. Kan användas i interaktiva frågor och i automatiserade pipelines.

SqlPackage /Version

Hjälp

Du kan visa användningsinformation för SqlPackage med hjälp av /? eller /help:True.

SqlPackage /?

För parameter- och egenskapsinformation som är specifik för en viss åtgärd använder du hjälpparametern utöver den åtgärdens parameter.

SqlPackage /Action:Publish /?

Slutkoder

SqlPackage-kommandon returnerar följande slutkoder:

  • 0 = lyckades
  • nonzero = fel

Nästa steg