如何以编程方式在VS 2013 SSDT项目上执行数据比较?

时间:2015-07-28 07:21:14

标签: visual-studio-2013 sql-server-data-tools sqlpackage

Visual Studio 2013具有允许在SSDT项目和目标数据库之间执行数据比较的功能。

根据SO的另一篇文章,有certain requirements with regards to performing such a compare

考虑到这些要求,我想在我们的构建和部署过程中做这样的事情:

  1. 将任何数据库架构更改发布到目标数据库,以确保源和目标具有完全相同的表,列,SP等,以符合上面链接中提到的要求
  2. 运行数据比较并生成更新脚本,或将源DB中的任何更改直接发布到目标数据库
  3. 目前,我有一个负责子弹的脚本。 1通过sqlpackage.exe使用DACPAC进行模式比较。虽然看起来不太可能使用sqlpackage执行数据比较,但我还没有找到任何其他替代方案。在VS 2010中有可能run a data compare via the command window,但我在VS 2013中没有看到任何关于此的文档......

    因此,我的问题是,是否存在允许通过例如编程方式运行数据比较的API和/或其他工具。一个Powershell脚本。

1 个答案:

答案 0 :(得分:2)

看起来你是对的,只要SSDT安装在磁盘(more details here)上,架构差异就有命令行支持,但是还没有用于数据比较和更新的编程接口。