如何获得等效于VS模式比较工具的C#代码?

 收藏

我有多个SQL Server数据库,我想将它们与一个金标准数据库进行比较,并生成一份报告/列表,其中包含两种在架构方面的差异。这将按计划自动完成。

我需要能够使用C#来有问题地做到这一点(这意味着我无法使用SSDT提供的GUI工具)。我也不能使用任何第三方工具,例如Red-Gate。

我无法找到有关如何执行此操作的任何资源。谢谢。


最佳答案:

如果将数据库放入dacpac(SSDT项目),则可以使用sqlpackage.exe将dacpac与每个数据库进行比较,并使用/ Action:DriftReport获取更改的xml列表或/ Action:DeployReport。您可以将对sqlpackage的调用包装在Process.Start中(您也可以直接调用该服务,但看不到任何文档)

听起来您正在尝试构建作为DLM仪表板的redgate-它是免费的,因此请看一下:

https://www.red-gate.com/products/dlm/dlm-dashboard/

回复