请高手指教触发器问题
我在做一个体育成绩计算系统,其中每门课程的成绩和得分都放在一个表中,我要求当在表中更新某门课的成绩是,其相应的得分要做改变,用触发器来实现;
create trigger compteScoreA
on tablename
for update
as
begin
if update(markA)
begin
update tablename
set scoreA=computeA(markA)--computeA为我自己写的函数
where tablename.studentNumber=deleted.studentNumber
end
end
go
问题是触发器只对做了修改的那行的scoreA类做修改
我知道deleted 表中存放的是刚刚delete 或update的数据库中的旧数据,于是我用了如上的代码,但却不能通过,请哪位朋友指教问题所在,或是提供其他解决办法!
问题点数:20、回复次数:2Top
1 楼pengdali()回复于 2003-05-04 21:37:45 得分 20
create trigger compteScoreA
on tablename
for update
as
begin
if update(markA)
begin
update tablename
set scoreA=computeA(deleted.markA) from deleted
where tablename.studentNumber=deleted.studentNumber
end
end
goTop
2 楼guxiaobo1982(Amber)回复于 2003-05-05 19:01:29 得分 0
大力就是大力啊!谢谢啦!Top




