我想在我的表上应用写/删除/更新权限,但是应用逻辑。
如果用户具有写入/删除/更新权限,请执行。
如果用户没有写/删除/更新权限,则必须使用a写入/删除/更新到另一个表 INSERTED / DELETED SQL表上的逻辑操作
我的表上有一些触发器(大多数FOR INSERT / UPDATE / DELETE)。 我不想根据用户凭证/属性更改所有触发器并使其INSTEAD OF和写入或不写入表格,并且应用了我的逻辑。
还有另一种方法可以做到这一点,例如“逻辑触发器”或“逻辑权限”吗?
答案 0 :(得分:1)
不幸的是,你不能在sql server中有“一个触发器来统治它们”(如this question中所述)。您唯一的选择是在每个表上放置一个触发器,然后设置角色触发器的优先级,使其在任何其他触发器之前执行。那,或者只是在每个触发器中的其余触发器代码之前添加您的角色代码。