触发器针对删除怎么未响应?

mickwang 2003-08-28 07:08:18
create trigger tr1 on tbname
for insert,update,delete
as
.....
在插入和更新的时候,触发器都起到了作用
但是在删除的时候就没有任何反应
是怎么回事?
我的情况是,两个表,一对多
每次对子表的纪录进行操作
就将其中的的一个字段得值求和放到主表中对应的记录中
比如,表一,字段:id1,value 表2 id2,id1,val
就是将表一中value设置为表2中id1对应的val的和
...全文
59 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengdali 2003-08-28
  • 打赏
  • 举报
回复
create table 表 (a int)
go
insert 表 values (1)
go
CREATE TRIGGER 名 ON 表
FOR UPDATE
AS
select a 更新前被删除的数据 from deleted
select a 更新后被插入的数据 from inserted
go
------------测试:
update 表 set a=3
pengdali 2003-08-28
  • 打赏
  • 举报
回复
create trigger tr1 on tbname
for insert,update,delete
as
update 表1 set value=value-tem.val from deleted tem where 表1.id1=tem.id1
update 表1 set value=value+tem.val from inserted tem where 表1.id1=tem.id1
mickwang 2003-08-28
  • 打赏
  • 举报
回复
代码不操作数据,只是读取而已,数据确实没有变化
yujohny 2003-08-28
  • 打赏
  • 举报
回复
是你的代码有问题,可能是你只用INSERTED表操作
而DELETE的触发器只有DELETED表里有记录
我猜测而已,最好贴出的详细代码
txlicenhe 2003-08-28
  • 打赏
  • 举报
回复
肯定是起作用了的,只不过你的代码可能没有实现。

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧