在部署到 SQL Azure 数据库时,我有一个关于数据层应用程序 (DACPAC) 升级的问题。当我们通过向导 UI 手动升级 DACPAC 时,有一个步骤是我们查看数据丢失警告报告并能够将操作报告保存到 HTML 文件(请参阅此处的“查看升级计划页面”)。操作列显示将运行以执行升级的操作,例如 Transact-SQL 语句。如果相关操作可能会删除数据,则数据丢失列将包含警告。
现在,我正在使用 Powershell 自动化数据库升级过程,到目前为止效果很好。不幸的是,我找不到生成相同数据丢失警告报告的方法。
我的 Powershell 升级脚本的摘录如下:
## Generate the database change list (database drift) and upgrade script and save them to file.
$dacChanges = $dacStore.GetDatabaseChanges($dataTierAppNameToUpgrade) | Out-File -Filepath .\DatabaseChanges.txt
## Getting the DAC incremental upgrade script for data-tier application
$dacStore.GetIncrementalUpgradeScript($dataTierAppNameToUpgrade, $nextDacType) | Out-File -Filepath .\DatabaseUpgrade.sql
生成的DatabaseChanges.txt
输出文件GetDatabaseChanges()
并没有提供真正的信息,所以我们想知道是否有一种方法可以获得与手动完成升级向导时获得的报告文件相同的报告文件。在解决数据迁移问题时,此报告对部署团队有很大帮助,我们希望在部署到实时生产数据库时能够手动检查它。
我们搜索了 MSDN 文档,但没有任何运气。有谁知道 Powershell 部署是否支持此功能?是否有计划在不久的将来支持此功能?
提前感谢您的帮助。