2010-08-22 40 views
1

我们目前使用审计触发器来跟踪我们所有的数据库更改。为了捕获提交删除的用户的user_id,我们必须使用更新,然后让触发器执行删除,以便我们可以捕获该USER_ID。Capture USER_ID用于删除操作

有没有其他人使用不同的方法或有更好的方法来处理这个过程?

感谢,

--S

+0

你可以发布你的TSQL – 2010-08-22 05:07:03

回答

1

对于直接连接从客户端,在DELETE触发器中使用SUSER_SNAME()或类似语句。

对于间接(例如,通过网站),使用SET CONTEXT_INFO (answers by me before)传递执行的用户详细信息。这可以通过网站中的代码或通过存储的proc参数来设置。这也可以用于直接连接。

0

如果您使用的是Windows身份验证(无论是2层,或假冒),那么你可以使用SUSER_NAME()SUSER_ID()

select SUSER_NAME(), USER_ID()