跟踪SQL Server 2008 R2 DML更改

时间:2017-10-27 07:36:48

标签: sql sql-server sql-server-2008

我不是管理员用户。我想创建一个Trigger,如果执行任何DML操作,它应捕获调用/受影响的表,函数,视图和SP名称。

对于ex:从UI,如果我插入一条记录,我的代码将调用SP,在该SP中我们有插入逻辑。在这里,我想得到一个调用SP和表的名称。 是否可以在没有管理员权限的情况下创建触发器?

1 个答案:

答案 0 :(得分:0)

表级别ALTER - >授予添加或删除触发器对象的能力。

您需要拥有的只是对您正在使用的表或数据库授予ALTER权限,而不需要是管理员。

GRANT ALTER ON dbname.tablename TO [domain\userid];  
GO  

您可以在此处查看您可能获得的所有权限:https://docs.microsoft.com/en-us/sql/t-sql/statements/grant-database-permissions-transact-sql

有用的链接:

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/83d22caf-cee1-44fb-b717-79f53d5f3b54/grant-create-trigger-privilege?forum=sqlsecurity

https://www.techonthenet.com/sql_server/grant_revoke.php