我正在使用SQLPackage.exe实用程序以及Database项目的发布配置文件来运行对SQL Server数据库的更改。
据我了解,这是部署过程:
我在发布配置文件高级设置中选中了“包括事务脚本”选项,但这似乎仅适用于“主要部署”部分。
我的问题是:如果主部署失败,是否提交了预部署脚本?以及,如果部署后脚本失败,是否正在提交部署前更改和主要部署更改?
是否可以将发布脚本设为“原子”-一切都作为一个单元成功或失败?
谢谢。
答案 0 :(得分:1)
我已经在某个地方回答了这个问题,但是找不到。正如彼得已经提到的那样,没有内置功能。您可以自己做。尝试生成代码,并查看其如何在Main Deployment
中打开和提交/回滚事务,然后将“打开事务处理”复制到您的前脚本开头,然后将此技术的末尾复制到您的后脚本末尾
我已经测试过,并且这种方式有效。这样做确实并不难,所以我将不提供一个真实的例子。