[英]Trigger: Trigger if someone INSERT,UPDATE and DELETE a table
我创建了一个触发器,如果它们在TblCurrentRec中进行更新,删除或插入,则将其用户名记录到ChangesLogtbl。
CREATE TRIGGER mytriggerforinsert
@username = username <------------------itried to place something like this
ON TblCurrentRec
AFTER INSERT
AS BEGIN
INSERT INTO ChangesLogtbl
values ('username', 'GETDATE')
END
GO
这行得通,但是我希望这个可以在架构中的所有表上运行。 也不限于插入,而是删除和更新。 我尝试使用网络中的所有内容,还复制并研究了不同的样本,但无济于事。 我是SQL的新手,这是我第一次创建触发器。 希望你们能理解。
谢谢。
您可以使用游标和Information_Schema.Tables
视图在数据库的所有表上创建触发器。
为了涵盖其他DML,
ON TblCurrentRec
AFTER INSERT or UPDATE or DELETE
进入架构级别的覆盖范围,我怀疑您是否可以为架构中的所有表创建一个触发器。触发器应写入每个表中。
如果在DDL
我们可以使用DATABASE TRIGGERS
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.