SYSTEM_USER 是登录名,USER是架构名。可以在触发器中增加日志功能。create TRIGGER [dbo].[trigger_T_Test] ON [dbo].[T_Test] AFTER INSERT,DELETE,UPDATE AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Insert statements for trigger here if Update([Name]) begin update T_TestDetails set Name=i.Name from T_TestDetails t1, Deleted d, Inserted i where t1.Name = d.Name
print 'T_Test operate!---' + system_user+'---'+user ----记录下 INSERT INTO [TestDB].[dbo].[T_OperateLog] ([SYSTEMUSER] ,[USER] ,[CreateTime]) VALUES (system_user ,user ,getdate()) end END
现在想查出是哪个sql server用户对这个表操作导致触发了触发器。
ON [dbo].[T_Test]
AFTER INSERT,DELETE,UPDATE
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON; -- Insert statements for trigger here
if Update([Name])
begin
update T_TestDetails set Name=i.Name
from T_TestDetails t1, Deleted d, Inserted i
where t1.Name = d.Name
print 'T_Test operate!---' + system_user+'---'+user
----记录下
INSERT INTO [TestDB].[dbo].[T_OperateLog]
([SYSTEMUSER]
,[USER]
,[CreateTime])
VALUES
(system_user
,user
,getdate())
end
END