我有一个sql触发器,用于审计我的数据库表。 数据通过Web界面更改。只有经过身份验证的用户才能更改/添加数据。
在触发器中,我有一行代码
select @UserName = system_user
我希望将system_user
(经过身份验证的网络用户)分配给UserId
,而不是@UserName
。
UserId在表中找到每一行作为其中一列。
我可以用什么替换system_user来获得此效果。提前谢谢。
答案 0 :(得分:1)
如果是SQL服务器,您只需从“已插入”表中查询,如下所示:
select @UserName =(select Your_USERID_ColumnName from inserted)
使用SQL Server进行插入/更新和删除时,有两个虚拟表“已插入”和“已删除”,您可以查询