sql - 有没有办法默认触发器在特定用户上运行以进行 DML 操作?

标签 sql sql-server t-sql database-trigger

我在数据库 A 中的表 A 上有一个触发器,它将数据插入到数据库 B 中的表 b 中,这两个数据库位于同一服务器上。

对数据库 A 中的表 A 具有开发人员访问权限的用户在执行 dml 操作时遇到错误,因为他的角色仅限于使用数据库 A。有没有办法默认触发器在特定的数据库上运行连接

最佳答案

在 SQL Server 中,触发器(以及存储过程和函数)具有 EXECUTE AS条款。这使您可以控制执行代码时的权限。

关于sql - 有没有办法默认触发器在特定用户上运行以进行 DML 操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55174381/

相关文章:

sql - 是否可以在 Select * 中使用小写或大写

sql - 如何在 SQL 中将两个查询组合为类别 - 子类别的单个结果集?

sql - 确定列是增加还是减少

mysql - 获取用户的前 5 条记录,平均记录并按平均值排名

sql - 如何引用下一行的数据?

sql - 拆分空格分隔值并将它们映射到 SQLite 中的原始 ID?

SQL Select : Update if exists, 如果没有则插入 - 与日期部分比较?

sql - 比较两个配置单元表之间的计数

sql - 如何选择表格中除一列之外的所有列?

sql - 单个变量由存储过程中的字符数组成?