您的位置:首页 > 数据库 > MySQL

Mysql 触发器

2013-11-26 19:37 423 查看
Mysql触发器

DROP TRIGGER IF EXISTS tr_t_fmc_ss;
create trigger tr_t_fmc_ss
AFTER UPDATE(可以是insert或delete) on t_fmc_ss(表名)
for each row begin
#主场玩家id
DECLARE zuserId VARCHAR(30);
#客场玩家id
DECLARE kuserId VARCHAR(30);
#判断比赛是否结束
if old.jd=3 THEN
#给定义的变量赋值
SET zuserId= (SELECT x.USERID FROM t_fmc_wjxx x where x.qdbm=old.zcqdbm);
SET kuserId= (SELECT x.USERID FROM t_fmc_wjxx x where x.qdbm=old.kcqdbm);
#向主场球队发送比赛信息
INSERT INTO `t_fmc_xx`(RQ,BT,NR,DQZT,XXLX,FJRID,SJZID,SJRID,SCZT,FJRXM,UPOBJECTID,SJRXM)
VALUES (DATE_FORMAT(SYSDATE(),'%Y%m%d%h%m%s'),'比赛信息',old.scbm, '1', '4', '', null, zuserId, '1', '', null, '');
END IF;
end;

功能:当更新表t_fmc_ss表中的数据后(如果是在之前则将after改为before),如果跟新的那条数据中字段jd=3,则向表t_fmc_xx中插入一条信息
注:
如果是向一张表插入数据时,触发向类外一张表插入数据,要取得插入数据某个字段值,将old改为new ,old 用于update或delete,insert要用new
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Mysql 触发器