修改表中某个字段后触发其中3个字段
第一个字段最大为5,每次触发的都是这个字段的自减当减少到0时
判断第二个字段是否为0,为0就判断第三个字段是否为0
不为0就减1,然后第一个字段又为5
第二个字段跟你一个字段的算法一样,我的触发器不知道出了什么问题
alter trigger tr_pingjiatixi
on userlv_tab
for update
as
declare @id int,@star int,@zuan int,@guan int
select @id=lvid from inserted
select @star=star from inserted
select @zuan=zuan from inserted
select @guan=guan from inserted
if update(good)
update userlv_tab set star=star+1 where [email protected]
if update(bad)
begin
if(@star>0)
update userlv_tab set star=star-1 where [email protected]
else
begin
if(@zuan>0)
update userlv_tab set zuan=zuan-1,star=5 where [email protected]
else
begin
if(@guan>0)
update userlv_tab set zuan=5,star=5,[email protected] where [email protected]
else
update userlv_tab set star=0 where [email protected]
end
end
end
麻烦看看有什么问题很急
------解决方案--------------------
MYSQL的TRIGER不能对表本操作,在BEFORE UPDTE中
set new.star=....
------解决方案--------------------
你为什么说这段代码错了? 没起作用?还是系统提示你语法错误?
问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧)