微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我有一个数据库“理想”版本的 DACPAC,还有一些可能不同的生产数据库我怎样才能得到一份比较它们的报告?

如何解决我有一个数据库“理想”版本的 DACPAC,还有一些可能不同的生产数据库我怎样才能得到一份比较它们的报告?

此 DACPAC 用于测试部署;但是我们一直无法将它用于生产部署,因为不知何故所有生产数据库都失去了同步。我打算在 Visual Studio 中运行 Schema Compare 依次将每个数据库与 DACPAC 进行比较并记下所有差异,但差异比我预期的要多得多,而且需要很长时间才能将它们全部写下来。有没有办法为每个数据库生成一份报告,详细说明该数据库中所有数据库对象与 DACPAC 之间的差异?

解决方法

SqlPackage.exe 是 Visual Studio Schema Compare 使用的部署引擎,它还有其他选项:

SqlPackage.exe 是一个命令行实用程序,可自动执行以下操作 数据库开发任务:

Version:返回 SqlPackage 应用程序的内部版本号。添加 在 18.6 版本中。

Extract:创建一个数据层应用程序 (.dacpac) 文件,其中包含 模式或模式和来自连接的 SQL 数据库的用户数据。

发布:增量更新数据库架构以匹配架构 .dacpac 源文件。如果数据库不存在于 服务器,发布操作创建它。否则,现有 数据库已更新。

导出:导出连接的 SQL 数据库 - 包括数据库架构 和用户数据 - 到 BACPAC 文件 (.bacpac)。

导入:将架构和表数据从 BACPAC 文件导入到 新用户数据库。

DeployReport:创建将要进行的更改的 XML 报告 通过发布操作。

DriftReport:创建已进行更改的 XML 报告 自上次注册以来已注册的数据库。

Script:创建一个 Transact-SQL 增量更新脚本,用于更新 目标的架构以匹配源的架构。

SqlPackage.exe 命令行允许您指定这些操作 连同特定于动作的参数和

,

有一个新的 Powershell 模块:DACPACComparator https://www.powershellgallery.com/packages/DacpacComparator/2.0 比较 2 DACPAC 并为您提供差异。 你可以利用它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。