Condividi tramite


Informazioni di riferimento per l'interfaccia della riga di comando di SqlPackage

SqlPackage è un'utilità della riga di comando per la portabilità e le distribuzioni del database in ambienti Windows, Linux e macOS. L'interfaccia della riga di comando di SqlPackage analizza ogni chiamata per parametri, proprietà e variabili SQLCMD.

SqlPackage {parameters} {properties} {SQLCMD variables}
  • I parametri vengono usati per specificare l'azione da eseguire, i database di origine e di destinazione e altre impostazioni generali.
  • Le proprietà vengono utilizzate per modificare il comportamento predefinito di un'azione.
  • Le variabili SQLCMD vengono usate per passare valori alle variabili SQLCMD nel file di origine.

Per creare un comando SqlPackage, è necessario specificare un'azione e i relativi parametri aggiuntivi. Facoltativamente, è possibile aggiungere proprietà e variabili SQLCMD per personalizzare ulteriormente il comando.

Nell'esempio seguente viene usato SqlPackage per creare un file con estensione dacpac dello schema del database corrente:

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

In questo esempio i parametri sono:

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

In questo esempio le proprietà erano:

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

Azioni di SqlPackage

  • Versione: restituisce il numero di build dell'applicazione SqlPackage.

  • Estrazione: crea un file dell'applicazione livello dati (con estensione dacpac) contenente lo schema o lo schema e i dati utente da un database SQL connesso.

  • Publish: aggiorna in modo incrementale uno schema di database affinché corrisponda allo schema di un file di origine con estensione dacpac. Se il database non esiste nel server, viene creato durante l'operazione di pubblicazione. In caso contrario, verrà aggiornato un database esistente.

  • Esportazione: esporta un database SQL connesso, inclusi lo schema del database e i dati utente, in un file BACPAC (con estensione bacpac).

  • Importazione: importa lo schema e i dati della tabella da un file BACPAC in un nuovo database utente.

  • DeployReport: crea un report XML delle modifiche che verrebbero effettuate da un'azione di pubblicazione.

  • DriftReport: crea un report XML delle modifiche apportate a un database registrato dall'ultima registrazione.

  • Script: crea uno script di aggiornamento incrementale Transact-SQL che aggiorna lo schema di una destinazione affinché corrisponda allo schema di un'origine.

Nota

Anche se Microsoft Entra ID è il nuovo nome per Azure Active Directory (Azure AD), per evitare l'interruzione degli ambienti esistenti, la denominazione Azure AD è tuttora mantenuta in alcuni elementi hardcoded, ad esempio campi dell'interfaccia utente, provider di connessioni, codici errore e cmdlet. All’interno di questo articolo i due nomi vengono utilizzati in modo intercambiabile.

Parametri

Alcuni parametri vengono condivisi tra le azioni SqlPackage. Di seguito è riportata una tabella che riepiloga i parametri. Per altre informazioni fare clic sulle pagine delle azioni specifiche.

Parametro Forma breve Extract Pubblicazione Export Importa DeployReport DriftReport Script
/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
/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: /sec 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

Proprietà

Le azioni SqlPackage supportano un numero elevato di proprietà per modificare il comportamento predefinito di un'azione. L'uso facoltativo delle proprietà viene eseguito aggiungendo /p:PropertyName=Value alla riga di comando. È possibile specificare più proprietà e alcune proprietà possono essere specificate più volte ( ad esempio /p:TableData=Product /p:TableData=ProductCategory). Per altre informazioni sulle proprietà, vedere le pagine di azione specifiche.

Variabili SQLCMD

Le variabili SQLCMD possono essere incorporate in un file con estensione dacpac da un progetto SQL, quindi impostate durante la distribuzione con SqlPackage Publish o Script. Per altre informazioni sull'aggiunta di variabili SQLCMD a un progetto SQL, vedere la documentazione dei progetti SQL.

Comandi di utilità

Versione

Visualizza la versione di sqlpackage come numero di build. Può essere usato nei prompt interattivi, nonché nelle pipeline automatizzate.

SqlPackage /Version

Help

È possibile visualizzare le informazioni sull'utilizzo di SqlPackage usando /? o /help:True.

SqlPackage /?

Per informazioni sui parametri e sulle proprietà specifici di una determinata azione, usare il parametro della Guida oltre al parametro dell'azione.

SqlPackage /Action:Publish /?

Codici di uscita

I comandi SqlPackage restituiscono i codici di uscita seguenti:

  • 0 = esito positivo
  • diverso da zero = esito negativo

Passaggi successivi