1

我正在做一个小型试点项目,试图实施 Sql Server Data Tools sqlproj 项目,以便更好地将我们的数据库置于源代码控制之下。在我的组织中,我们有单独的非信任域用于各种目的的测试环境,因此这些域当然有自己的隔离活动目录帐户。

文档仍然有些稀疏,我真的不知道从哪里获得有关此工具集的更多信息,尤其是考虑到 Visual Studio 数据库资产历史上的大量流失。

到目前为止,我真正拥有的唯一想法是专门为每个单独的域的安全对象制作单独的 sqlproj 项目,与其他模式对象分开。我希望我能以某种方式将我的实际数据库架构与部署时的数据库架构联系起来,并以某种方式切换我在构建中使用的安全项目。我不知道这是否可行。

使用 Visual Studio sqlproj 项目的任何人都必须处理这个问题吗?这种事情有最佳实践吗?

4

1 回答 1

2

如果您对每个环境都有不同的设置,那么最简单的方法是在部署时将它们排除在外并且不删除它们,或者使用手动设置它们的部署后脚本。

通常为了处理不同的配置,我建议使用 sql cmd 变量(在项目的属性中有一个用于设置这些的页面)但是当你创建一个登录时你不能使用一个变量来创建它,这样就会失败!

有一个关于如何为这种情况设置部署后包装器的示例:

http://schottsql.blogspot.co.uk/2013/05/ssdt-setting-different-permissions-per.html

ssdt 祝你好运,有一些奇怪的怪癖,但它可以实现这么多!

于 2014-10-13T08:16:55.630 回答