触发器 实现在一张表更新的同时,将另一张表中外键匹配的项的值加一

create table tbUserTow 
(
Id int primary key,
score int default 0,
)
create table tbScoreCount
(
IdSum int foreign key references tbUserTow(Id),----外键约束
scoreCountId int not null,
ScoreSum int default 0,
primary key(IdSum,scoreCountId)  ,----联合主键

)
insert into tbScoreCount values(1,1,0)
insert into tbScoreCount values(2,2,0)
insert into tbScoreCount values(3,3,0)

create trigger updateTbuserTowAfter   -----创建触发器
on tbUserTow    -----触发器所建的表
AFTER update         -----触发器条件 After每个触发动作(UPDATE,DELETE,INSERT)包含多个触发器
as
begin
           update tbScoreCount set ScoreSum=ScoreSum+1 where IdSum in (select  Id from inserted)   ----(where IdSum =(select id top 1 from inserted)参见)
end

以下为测试数据

update tbUserTow set score=1 where score='0'
update tbUserTow set score=0 where score='1'
update tbUserTow set score=2 where id='1'

转载于:https://www.cnblogs.com/zhcnblog/archive/2012/08/07/2626915.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值