你的第二段代码是错误的,这说明你不明白触发器的执行原理;
触发器需要用三个动作来激活触发器,即insert,update,delete
在激活触发器的同时,系统会自动生成三个相关的表。
即insert动作时,会生成inserted表
update动作时,会生成inserted和deleted表,
delete动作时,会成生deleted表所以你的第二段代码的updated这个表是无效的,根本没有这个表的存在。
如果你要查看被删除的那条记录代码如下:
修改为:
CREATE TRIGGER cfq2 ON mytable
FOR UPDATE
AS
declare @aa int
select @aa=ID from deleted
---如果你要查看新插入的那条记录可以这样:
select @aa=id from inserted
这样就可以啦
触发器需要用三个动作来激活触发器,即insert,update,delete
在激活触发器的同时,系统会自动生成三个相关的表。
即insert动作时,会生成inserted表
update动作时,会生成inserted和deleted表,
delete动作时,会成生deleted表所以你的第二段代码的updated这个表是无效的,根本没有这个表的存在。
如果你要查看被删除的那条记录代码如下:
修改为:
CREATE TRIGGER cfq2 ON mytable
FOR UPDATE
AS
declare @aa int
select @aa=ID from deleted
---如果你要查看新插入的那条记录可以这样:
select @aa=id from inserted
这样就可以啦
你也可以这样写,
CREATE TRIGGER cfq2 ON mytable
FOR UPDATE
AS
select * from inserted
select * from deleted
因为这样问你们会很清楚我问这个问题的意图。感谢各位热心大虾回答,谢谢你们了。