我们的 SQL Server 2000 实例托管了多个相似的数据库,每个客户都有一个。当需要全部更新时,我们使用 Red Gate SQL Compare 在开发数据库和所有客户端数据库的当前状态数据库副本之间生成迁移脚本。
SQL Compare 生成一个事务性脚本,如果一个步骤失败,该脚本会回滚所有内容。但目前我们的系统使用一种方法,将脚本拆分为批处理分隔符(GO 语句),然后分别运行每个命令,这会破坏所有事务性内容。编程查询数据库时不支持GO语句(经典ASP)
我想知道如何以编程方式或在工具中手动在所有这些数据库(如 250 DB)上运行该脚本(保留事务)?在Query Analyzer中,我们需要选择每个 DB 并按Run,这对于我们拥有的 DB 数量来说是相当长的。