1

我想在我的表上应用写/删除/更新权限,但通过应用逻辑。

如果用户具有写入/删除/更新权限,则 OK。

如果用户没有写入/删除/更新权限,则必须写入/删除/更新到另一个表,并对 INSERTED/DELETED SQL 表进行逻辑操作

我的表上有一些触发器(大部分是 FOR INSERT/UPDATE/DELETE)。我不想更改所有触发器并使其 INSTEAD OF 并根据用户凭据/属性在表上写入 OR NOT 并应用我的逻辑。

还有另一种方法可以做到这一点,例如“逻辑触发器”或“逻辑权限”?

4

1 回答 1

1

不幸的是,您不能在 sql server 中拥有“一个触发器来统治它们”(如本问题所述)。您唯一的选择是在每个表上放置一个触发器,然后设置角色触发器的优先级,使其在任何其他触发器之前执行。那,或者只是在每个触发器的其余触发器代码之前添加您的角色代码。

于 2012-07-27T15:43:05.717 回答