Compartilhar via


Referência da CLI do SqlPackage

O SqlPackage é um utilitário de linha de comando para portabilidade e implantações de banco de dados em ambientes Windows, Linux e macOS. A CLI (interface de linha de comando) do SqlPackage analisa cada invocação para parâmetros, propriedades e variáveis SQLCMD.

SqlPackage {parameters} {properties} {SQLCMD variables}
  • Parâmetros são usados para especificar a ação a ser executada, os bancos de dados de origem e de destino e outras configurações gerais.
  • Propriedades são usadas para modificar o comportamento padrão de uma ação.
  • variáveis SQLCMD são usadas para passar valores para as variáveis SQLCMD no arquivo de origem.

Para criar um comando SqlPackage, você deve especificar uma ação e seus parâmetros adicionais. Opcionalmente, você pode adicionar propriedades e variáveis SQLCMD para personalizar ainda mais o comando.

No exemplo a seguir, o SqlPackage é usado para criar um arquivo .dacpac do esquema de banco de dados atual:

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

Nesse exemplo, os parâmetros eram:

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

Nesse exemplo, as propriedades eram:

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

Ações do SqlPackage

  • Versão: retorna o número de build do aplicativo SqlPackage.

  • Extrair: cria um arquivo de aplicativo da camada de dados (.dacpac) que contém o esquema ou os dados do esquema e do usuário de um banco de dados SQL conectado.

  • Publicar: atualiza incrementalmente um esquema de banco de dados para corresponder ao esquema de um arquivo .dacpac de origem. Se o banco de dados não existir no servidor, a operação de publicação o criará. Caso contrário, um banco de dados existente será atualizado.

  • Exportar: exporta um banco de dados SQL conectado – incluindo o esquema de banco de dados e os dados do usuário – para um arquivo BACPAC (.bacpac).

  • Importar: importa os dados do esquema e da tabela de um arquivo BACPAC para um novo banco de dados de usuário.

  • DeployReport: cria um relatório XML que representa as alterações que uma ação de publicação faria.

  • DriftReport: cria um relatório XML que representa as alterações aplicadas a um banco de dados registrado desde que foi registrado pela última vez.

  • Script: cria um script de atualização incremental Transact-SQL que atualiza o esquema de um destino para corresponder ao esquema de uma origem.

Nota

Embora a ID do Microsoft Entra seja o novo nome do Azure AD (Azure Active Directory), para evitar a interrupção de ambientes existentes, o Azure AD ainda permanece em alguns elementos codificados, como campos de interface do usuário, provedores de conexão, códigos de erro e cmdlets. Neste artigo, os dois nomes são intercambiáveis.

Parâmetros

Alguns parâmetros são compartilhados entre as ações do SqlPackage. Abaixo está uma tabela resumindo os parâmetros, para obter mais informações, clique nas páginas de ação específicas.

Parâmetro Formulário Curto Extrair Publicar Exportar Importar DeployReport DriftReport de Script
/AccessToken: /em x x x x x x x
/ClientId: /cid x
/DeployScriptPath: /dsp x x
/DeployReportPath: /drp x x
/Diagnóstico: /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: /de 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: /s 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
/Variáveis: /v x x

Propriedades

As ações do SqlPackage dão suporte a um grande número de propriedades para modificar o comportamento padrão de uma ação. O uso opcional de propriedades é feito adicionando /p:PropertyName=Value à linha de comando. Várias propriedades podem ser especificadas e algumas propriedades podem ser especificadas mais de uma vez (por exemplo, /p:TableData=Product /p:TableData=ProductCategory). Para obter mais informações sobre propriedades, consulte as páginas de ação específicas.

Variáveis SQLCMD

As variáveis SQLCMD podem ser incorporadas a um arquivo .dacpac de um projeto SQL e, em seguida, definidas durante a implantação com o SqlPackage Publicar ou Script. Para obter mais informações sobre como adicionar variáveis SQLCMD a um projeto SQL, consulte a documentação de projetos do SQL.

Comandos do utilitário

Versão

Exibe a versão do sqlpackage como um número de build. Pode ser usado em prompts interativos e em pipelines automatizados.

SqlPackage /Version

Ajuda

Você pode exibir informações de uso do SqlPackage usando /? ou /help:True.

SqlPackage /?

Para informações de parâmetro e propriedade específicas de uma ação específica, use o parâmetro de ajuda além do parâmetro dessa ação.

SqlPackage /Action:Publish /?

Códigos de saída

Os comandos sqlPackage retornam os seguintes códigos de saída:

  • 0 = êxito
  • nonzero = failure

Próximas etapas