我们目前使用自家编写的 PS 脚本,将开发人员的本地 SQL 数据库与实时数据库进行比较,以生成部署脚本。我们通过 powershell 使用 Redgate SQL Compare,通常这样调用它(其中 $SQLComparepath 是 SQLcompare 的可执行文件的文件路径):
$AllArgs = @("/server1:$DevServer", "/Database1:$DevDB", "/Scripts2:$folder", "/Include:$type", "/Include:$type:\[$schema]\.\[$name]", '/Synchronize')
&$SQLComparePath $AllArgs
我们发现虽然这可行,但为大量对象生成脚本需要很长时间,因为我们为每个对象串行调用 exe。我已经搜索了文档,没有看到一次传递多个参数的任何方法。有谁知道通过 powershell 或其他方式调用 SQL Compare 的更有效方法?
谢谢!