一次性部署多个 SQL Server 2014 数据库
Deploying multiple SQL Server 2014 databases in one go
我有 5 个 .dacpac 文件,一个数据库对应一个 dacpac,目标是 SQL Server 2014。列表中的最后一个数据库依赖于其他 4 个。
我可以使用 sqlpackage.exe 单独部署每个 .dacpac,效果很好。
我真正想做的是这样做 "transactionally",如果这个词对于这个上下文来说是正确的,那么当我创建 5 个数据库时,如果任何部署出错,所有部署回滚。
要么创建所有数据库,要么 none 创建。
这可行吗,如果可行,我该怎么做?如果涉及到 Powershell 脚本,我并不反对。
提前致谢。
Powershell 可以做到这一点,尽管您必须手动控制 "transaction"
首先创建一个部署 dacpacs 的 powershell 脚本 - 即您应该能够使用所需参数复制并粘贴每个 sqpackage.exe 命令行
然后将每个命令包装在一个 powershell try/catch 块中,每个 catch 部分都必须有适当的手动回滚命令来整理每个阶段的内容。
我有 5 个 .dacpac 文件,一个数据库对应一个 dacpac,目标是 SQL Server 2014。列表中的最后一个数据库依赖于其他 4 个。
我可以使用 sqlpackage.exe 单独部署每个 .dacpac,效果很好。
我真正想做的是这样做 "transactionally",如果这个词对于这个上下文来说是正确的,那么当我创建 5 个数据库时,如果任何部署出错,所有部署回滚。
要么创建所有数据库,要么 none 创建。
这可行吗,如果可行,我该怎么做?如果涉及到 Powershell 脚本,我并不反对。
提前致谢。
Powershell 可以做到这一点,尽管您必须手动控制 "transaction"
首先创建一个部署 dacpacs 的 powershell 脚本 - 即您应该能够使用所需参数复制并粘贴每个 sqpackage.exe 命令行
然后将每个命令包装在一个 powershell try/catch 块中,每个 catch 部分都必须有适当的手动回滚命令来整理每个阶段的内容。