Informations de référence sur l’interface CLI SqlPackage
SqlPackage est un utilitaire en ligne de commande pour la portabilité et les déploiements de base de données dans les environnements Windows, Linux et macOS. L’interface de ligne de commande SqlPackage analyse chaque appel pour les paramètres, les propriétés et les variables SQLCMD.
SqlPackage {parameters} {properties} {SQLCMD variables}
- Paramètres sont utilisés pour spécifier l’action à effectuer, les bases de données source et cible et d’autres paramètres généraux.
- Propriétés sont utilisées pour modifier le comportement par défaut d’une action.
- variables SQLCMD sont utilisées pour passer des valeurs aux variables SQLCMD dans le fichier source.
Pour créer une commande SqlPackage, vous devez spécifier une action et ses paramètres supplémentaires. Si vous le souhaitez, vous pouvez ajouter des propriétés et des variables SQLCMD pour personnaliser davantage la commande.
Dans l’exemple suivant, SqlPackage est utilisé pour créer un fichier .dacpac du schéma de base de données actuel :
SqlPackage /Action:Extract /TargetFile:"C:\sqlpackageoutput\output_current_version.dacpac" \
/SourceServerName:"localhost" /SourceDatabaseName:"Contoso" \
/p:IgnoreUserLoginMappings=True /p:Storage=Memory
Dans cet exemple, les paramètres étaient les suivants :
/Action:Extract
/TargetFile:"C:\sqlpackageoutput\output_current_version.dacpac"
/SourceServerName:"localhost"
/SourceDatabaseName:"Contoso"
Dans cet exemple, les propriétés étaient les suivantes :
/p:IgnoreUserLoginMappings=True
/p:Storage=Memory
Actions SqlPackage
version: retourne le numéro de build de l’application SqlPackage.
Extraire: crée un fichier d’application de la couche Données (.dacpac) contenant le schéma ou le schéma et les données utilisateur d’une base de données SQL connectée.
Publier: met à jour de façon incrémentielle un schéma de base de données pour qu’il corresponde au schéma d’un fichier .dacpac source. Si la base de données n’existe pas sur le serveur, l’opération de publication la crée. Sinon, une base de données existante est mise à jour.
Exporter: exporte une base de données SQL connectée, y compris le schéma de base de données et les données utilisateur, vers un fichier BACPAC (.bacpac).
Importer: importe les données de schéma et de table à partir d’un fichier BACPAC dans une nouvelle base de données utilisateur.
DeployReport: crée un rapport XML représentant les modifications qu’une action de publication effectuerait.
DriftReport: crée un rapport XML représentant les modifications appliquées à une base de données inscrite depuis sa dernière inscription.
script: crée un script de mise à jour incrémentielle Transact-SQL qui met à jour le schéma d’une cible pour qu’il corresponde au schéma d’une source.
Note
Bien que Microsoft Entra ID soit le nouveau nom d’Azure Active Directory (Azure AD), pour empêcher l’interruption des environnements existants, Azure AD reste toujours dans certains éléments codés en dur, tels que les champs d’interface utilisateur, les fournisseurs de connexions, les codes d’erreur et les applets de commande. Dans cet article, les deux noms sont interchangeables.
Paramètres
Certains paramètres sont partagés entre les actions SqlPackage. Vous trouverez ci-dessous un tableau récapitunant les paramètres, pour plus d’informations, cliquez sur les pages d’action spécifiques.
Paramètre | Forme courte | Extraire | publier | Exporter | Importer | 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 |
/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 : | /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 |
/Variables : | /v | x | x |
Propriétés
Les actions SqlPackage prennent en charge un grand nombre de propriétés pour modifier le comportement par défaut d’une action. L’utilisation facultative des propriétés est effectuée en ajoutant /p:PropertyName=Value
à la ligne de commande. Plusieurs propriétés peuvent être spécifiées et certaines propriétés peuvent être spécifiées plusieurs fois (par exemple, /p:TableData=Product /p:TableData=ProductCategory
). Pour plus d’informations sur les propriétés, reportez-vous aux pages d’action spécifiques.
Variables SQLCMD
Les variables SQLCMD peuvent être intégrées à un fichier .dacpac à partir d’un projet SQL, puis définies pendant le déploiement avec SqlPackage Publier ou script. Pour plus d’informations sur l’ajout de variables SQLCMD à un projet SQL, consultez la documentation projets SQL.
Commandes utilitaires
Version
Affiche la version sqlpackage sous la forme d’un numéro de build. Peut être utilisé dans des invites interactives et dans pipelines automatisés.
SqlPackage /Version
Aide
Vous pouvez afficher des informations d’utilisation de SqlPackage à l’aide de /?
ou de /help:True
.
SqlPackage /?
Pour les informations de paramètre et de propriété spécifiques à une action particulière, utilisez le paramètre d’aide en plus du paramètre de cette action.
SqlPackage /Action:Publish /?
Codes de sortie
Les commandes SqlPackage retournent les codes de sortie suivants :
- 0 = réussite
- nonzero = échec
Étapes suivantes
- En savoir plus sur d’extraction SqlPackage
- En savoir plus sur de publication SqlPackage
- En savoir plus sur d’exportation SqlPackage
- En savoir plus sur d’importation SqlPackage
- En savoir plus sur résolution des problèmes liés à SqlPackage
- Partagez des commentaires sur SqlPackage dans le dépôt GitHub DacFx