首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

请问mysql触发器有关问题

2012-06-07 
请教mysql触发器问题createtrigger TrainingActSignUp_tribefore inserton trainingactsignupfor each row

请教mysql触发器问题
create trigger TrainingActSignUp_tri
before insert
on trainingactsignup
for each row
 
begin

declare tempTgidVar int;
declare deptid int;
declare rs decimal;
declare rs_cursor cursor for select tgid from tgroup where fullpath like '%,,'||deptid||',,%';
set tempTgidVar=0;
set deptid=new.entityid;

open rs_cursor;

aa: loop
fetch rs_cursor into rs;
  select count(tasu.entityid) into tempTgidVar from trainingactsignup tasu where tasu.entityid = rs
  and tasu.entitytype = 2 and tasu.taid = new.taid;
  if(tempTgidVar = 0) then
  insert into trainingactsignup set taid=new.taid,entitytype=2,entityid=rs,isautomatism=1,creatorid=new.creatorid,createtime=new.createtime;
 
  end if;
  end loop aa;

close rs_cursor;
end;
这个触发器 在表里面添加数据是 死循环了 求解决办法!

[解决办法]
select tgid from tgroup where fullpath like '%,,'||deptid||',,%';

这句可以执行吗
[解决办法]
这个触发器是你插入之前执行这个触发 ,这个触发又插入!看看是不是这个原因 ,before改成after试试
[解决办法]
在你的TRIGGER中,有对本表插入的语句,检查一下,要达到什么目的
[解决办法]
MYSQL无法实现,你想一个INSERT插入两条记录?
[解决办法]
无法同时插入两条记录的。

热点排行