急,触发器问题!为什么在数据库里修改分值时组长的下平均分不会跟着变,关掉这个表后再打开这个表,里面的数据才变!
CREATE TRIGGER [tri_MonitorMark] ON dbo.employee
FOR INSERT, UPDATE
AS
--组长分数(本组有固定分人员平均分*组长系数)
declare @emp_grp_ID int,@emp_Name varchar(50),@emp_Mark numeric(18,5),@emp_MarkAvg numeric(18,5)
select @emp_grp_ID=emp_grp_ID,@emp_Name=emp_Name,@emp_Mark=emp_Mark from inserted
select @emp_MarkAvg=avg(emp_Mark) from employee where emp_grp_ID=@emp_grp_ID and emp_MonitorRate=0 and emp_sc_ID=4
update employee set emp_Mark=@emp_MarkAvg*emp_MonitorRate where emp_grp_ID=@emp_grp_ID and emp_MonitorRate<>0 and emp_sc_ID=4
员工里面分几个组,一个组有一到两个组长,员工有一个固定分数,组长有一个组长系数,组长的分数为本组有固定分人员平均分*组长系数,为什么在数据库里修改分值时组长的下平均分不会跟着变,关掉这个表后再打开这个表,里面的数据才变!