CREATE PROCEDURE 奖励金额 ASbegin transactiondeclare @职员编码1 varchar(10) ,@职员编码2 varchar(10) ,@奖励金额 numeric(20,4)declare mycur3 cursor for select 职员编码 from 工资open mycur3fetch next from mycur3 into @职员编码1while (@@fetch_status=0)begin select @奖励金额=0 declare mycur4 cursor for select 职员编码 from 职员奖励管理 open mycur4 fetch next from mycur4 into @职员编码2 while (@@fetch_status=0) begin select @奖励金额=@奖励金额+(select 奖励金额 from 职员奖励管理 where @职员编码1 = @职员编码2 ) fetch next from mycur4 into @职员编码2 end close mycur4 deallocate mycur4update 工资 set 奖励金额=@奖励金额 where current of mycur3fetch next from mycu3r into @职员编码1endclose mycur3deallocate mycur3commitGO在vb中修改表的时候就出现以下问题 简单说明下 "职员奖励管理"这个表中会有重复的职员编码值,因为奖励是多次的,因此就会有对应的奖励金额,以上的存储过程是想把同一个职员编码的奖励金额累加起来,然后update"工资"表中的奖励金额=累加后的金额... 琢磨了很久 还是没有解决这个想法,希望得到高手的帮忙~...谢谢了!