小编典典

Redgate SQL 源代码控制:忽略数据库角色

sql

我正在使用 Redgate Source Control 来更改数据库。我有一个用于提交的测试数据库和一个作为最终目标的生产数据库。

由于特定要求,我想在生产数据库中拥有不同的数据库角色(数据库->安全->角色->数据库角色的设置)。我在生产服务器上更改了一个数据库,但每次部署到生产数据库时,数据库角色都会重置为我更改之前的状态(即使特定角色未同步)。

我在用户角色的比较选项上找到了一个过滤器,并检查了忽略:“用户的权限和角色成员资格”并部署了过滤器,但每次我将任何更改部署到生产时,数据库角色仍然会重置。 在此处输入图像描述

有没有办法忽略数据库角色或者我可以使用一种解决方法?

编辑:拉努的回答是正确的。我在这里遇到了一个单独的问题,这与未在角色中定义的角色权限有关,而是在 schema.sql 文件中。所以我必须提交整个架构才能获得提交的角色权限。


阅读 168

收藏
2022-07-21

共1个答案

小编典典

在 SQL 源代码管理中,可以选择完全忽略角色(或使用规则忽略某些角色)。

在对象资源管理器中选择源代码控制数据库,然后单击工具栏中的 SQL 源代码控制。转到设置页面,然后选择“编辑过滤器规则”。

然后只需取消勾选角色,角色将不再受源控制,或者您可以添加规则以排除/包含符合所述规则的角色。请注意,您可能还需要从源代码控制存储库中删除角色详细信息,否则可能会使用停止源代码控制时角色的位置(我建议检查)。

编辑过滤器规则屏幕

2022-07-21