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'
以下为于海涛例子
1、数据表的建立 use login create table voteMaster -----主表 create table voteDetails ---从表 insert into voteDetails values(1,1,'于海涛',0) insert into voteDetails values(2,1,'非常好',0) 2、触发器的创建 create trigger updateMaster -----创建触发器 最终效果: 你只要对voteDetails 内votNum的数据进行更新,那么主表voteMaster 的voteSum就会加1,从而实现了对投票的总数的统计的实现。 注意: select top 1 voteid from deleted
当你想自动更新数据库的时候 无论数据库怎样更新,插入新数据也好,自动在后面添加你想添加的东西 create trigger trig_notic_UI /* |