mysql建立触发器
来源:未知 责任编辑:责任编辑 发表时间:2014-02-18 03:27 点击:次
创建触发器。创建触发器语法如下:
CREATE TRIGGER trigger_name trigger_time trigger_event
ON tbl_name FOR EACH ROW trigger_stmt
其中trigger_name标识触发器名称,用户自行指定;
trigger_time标识触发时机,用before和after替换;
trigger_event标识触发事件,用insert,update和delete替换;
tbl_name标识建立触发器的表名,即在哪张表上建立触发器;
trigger_stmt是触发器程序体;触发器程序可以使用begin和end作为开始和结束,中间包含多条语句;
现有sys_log_login表,sys_log_login_record表,需要在sys_log_login表插入一条记录的时候去查询sys_log_login_record表中是否有和sys_log_login表中fd_operator_id一致的记录,若无,在sys_log_login_record中插入一条新记录;
create Trigger loginRecord
after insert
on sys_log_login for each ROW
BEGIN
if not exists(select fd_operator_id from sys_log_login_record where fd_operator_id = NEW.fd_operator_id) then
insert into sys_log_login_record values(NEW.fd_id,NEW.fd_operator_id,NEW.fd_create_time);
END IF;
end;
delimiter;
CREATE TRIGGER trigger_name trigger_time trigger_event
ON tbl_name FOR EACH ROW trigger_stmt
其中trigger_name标识触发器名称,用户自行指定;
trigger_time标识触发时机,用before和after替换;
trigger_event标识触发事件,用insert,update和delete替换;
tbl_name标识建立触发器的表名,即在哪张表上建立触发器;
trigger_stmt是触发器程序体;触发器程序可以使用begin和end作为开始和结束,中间包含多条语句;
现有sys_log_login表,sys_log_login_record表,需要在sys_log_login表插入一条记录的时候去查询sys_log_login_record表中是否有和sys_log_login表中fd_operator_id一致的记录,若无,在sys_log_login_record中插入一条新记录;
create Trigger loginRecord
after insert
on sys_log_login for each ROW
BEGIN
if not exists(select fd_operator_id from sys_log_login_record where fd_operator_id = NEW.fd_operator_id) then
insert into sys_log_login_record values(NEW.fd_id,NEW.fd_operator_id,NEW.fd_create_time);
END IF;
end;
delimiter;
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>