SQL 通过 NUnit 比较服务器架构并使用 scmp 文件
SQL Server Schema Compare via NUnit and use of scmp file
我想要实现的是进行单元测试 运行(通过 NUnit)来比较两个数据库的模式。如果数据库的模式相同则测试通过,否则测试失败。
看来我可以 shell 到 MsBuild 来执行此操作:
http://blogs.msdn.com/b/ssdt/archive/2014/07/15/msbuild-support-for-schema-compare-is-available.aspx
或解析dacpac文件:
但是我希望有比上述方法更简单的方法来实现这个目标吗?目前我无法访问 CI 来实现这一点,所以现在它是基于单元测试的。
前段时间我也有类似的需求,但实际上我需要的东西不仅可以比较两个模式,还可以自动执行所有更改以使它们相等。没有找到符合我需求的东西,所以我写了this tool。我已经在生产和开发环境中使用它几个月了。
我相信你可以很简单地使用parilis来做你想做的事:
var database1 = new DatabaseDescription(connectionInfo1);
var database2 = new DatabaseDescription(connectionInfo2);
var parilis = new Parilis(database1, database2);
Assert.IsTrue(parilis.AreAlreadyEqual();)
我想要实现的是进行单元测试 运行(通过 NUnit)来比较两个数据库的模式。如果数据库的模式相同则测试通过,否则测试失败。
看来我可以 shell 到 MsBuild 来执行此操作:
http://blogs.msdn.com/b/ssdt/archive/2014/07/15/msbuild-support-for-schema-compare-is-available.aspx
或解析dacpac文件:
但是我希望有比上述方法更简单的方法来实现这个目标吗?目前我无法访问 CI 来实现这一点,所以现在它是基于单元测试的。
前段时间我也有类似的需求,但实际上我需要的东西不仅可以比较两个模式,还可以自动执行所有更改以使它们相等。没有找到符合我需求的东西,所以我写了this tool。我已经在生产和开发环境中使用它几个月了。
我相信你可以很简单地使用parilis来做你想做的事:
var database1 = new DatabaseDescription(connectionInfo1);
var database2 = new DatabaseDescription(connectionInfo2);
var parilis = new Parilis(database1, database2);
Assert.IsTrue(parilis.AreAlreadyEqual();)