Compartir vía


Referencia de la CLI de SqlPackage

SqlPackage es una utilidad de línea de comandos para la portabilidad y las implementaciones de bases de datos en entornos windows, Linux y macOS. La interfaz de la línea de comandos (CLI) de SqlPackage analiza cada invocación de parámetros, propiedades y variables SQLCMD.

SqlPackage {parameters} {properties} {SQLCMD variables}
  • parámetros se usan para especificar la acción que se va a realizar, las bases de datos de origen y de destino y otras configuraciones generales.
  • propiedades se usan para modificar el comportamiento predeterminado de una acción.
  • variables SQLCMD se usan para pasar valores a las variables SQLCMD del archivo de origen.

Para crear un comando SqlPackage, debe especificar una acción y sus parámetros adicionales. Opcionalmente, puede agregar propiedades y variables SQLCMD para personalizar aún más el comando.

En el ejemplo siguiente, SqlPackage se usa para crear un archivo .dacpac del esquema de base de datos actual:

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

En ese ejemplo, los parámetros eran:

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

En ese ejemplo, las propiedades eran:

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

Acciones de SqlPackage

  • versión: devuelve el número de compilación de la aplicación SqlPackage.

  • Extraer: crea un archivo de aplicación de capa de datos (.dacpac) que contiene el esquema o esquema y los datos de usuario de una base de datos SQL conectada.

  • Publicar: actualiza incrementalmente un esquema de base de datos para que coincida con el esquema de un archivo .dacpac de origen. Si la base de datos no existe en el servidor, la operación de publicación la crea. De lo contrario, se actualiza una base de datos existente.

  • Exportar: exporta una base de datos SQL conectada ( incluidos el esquema de base de datos y los datos de usuario) a un archivo BACPAC (.bacpac).

  • Importar: importa los datos de esquema y tabla de un archivo BACPAC en una nueva base de datos de usuario.

  • DeployReport: crea un informe XML que representa los cambios que realizaría una acción de publicación.

  • DriftReport: crea un informe XML que representa los cambios aplicados a una base de datos registrada desde que se registró por última vez.

  • script: crea un script de actualización incremental Transact-SQL que actualiza el esquema de un destino para que coincida con el esquema de un origen.

Nota

Aunque Microsoft Entra ID es el nuevo nombre para Azure Active Directory (Azure AD), para evitar interrupciones de los entornos existentes, Azure AD sigue estando en algunos elementos codificados de forma dura, como campos de interfaz de usuario, proveedores de conexiones, códigos de error y cmdlets. En este artículo, los dos nombres son intercambiables.

Parámetros

Algunos parámetros se comparten entre las acciones SqlPackage. A continuación se muestra una tabla que resume los parámetros, para obtener más información, haga clic en las páginas de acciones específicas.

Parámetro Formulario corto extraer publicar exportar importar DeployReport driftReport script de
/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: /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

Propiedades

Las acciones sqlPackage admiten un gran número de propiedades para modificar el comportamiento predeterminado de una acción. El uso opcional de las propiedades se realiza agregando /p:PropertyName=Value a la línea de comandos. Se pueden especificar varias propiedades y algunas propiedades se pueden especificar más de una vez (por ejemplo, /p:TableData=Product /p:TableData=ProductCategory). Para obtener más información sobre las propiedades, consulte las páginas de acciones específicas.

Variables SQLCMD

Las variables SQLCMD se pueden integrar en un archivo .dacpac desde un proyecto de SQL y, después, establecer durante la implementación con SqlPackage Publicar o script de . Para obtener más información sobre cómo agregar variables SQLCMD a un proyecto de SQL, consulte la documentación de proyectos de SQL de .

Comandos de utilidad

Versión

Muestra la versión de sqlpackage como un número de compilación. Se puede usar en mensajes interactivos y en canalizaciones automatizadas.

SqlPackage /Version

Ayuda

Puede mostrar información de uso de SqlPackage mediante /? o /help:True.

SqlPackage /?

Para obtener información de parámetros y propiedades específica de una acción determinada, use el parámetro help además del parámetro de esa acción.

SqlPackage /Action:Publish /?

Códigos de salida

Los comandos SqlPackage devuelven los siguientes códigos de salida:

  • 0 = correcto
  • nonzero = failure

Pasos siguientes

  • Más información sobre extracción de SqlPackage
  • Más información sobre de publicación de SqlPackage
  • Más información sobre Exportación de SqlPackage
  • Más información sobre de importación de SqlPackage
  • Obtenga más información sobre solución de problemas con sqlPackage
  • Comparta comentarios sobre SqlPackage en el repositorio de GitHub de DacFx