mysql创建触发器
2012-08-29 14:34
435 查看
DROP TABLE IF EXISTS `tab1`;
CREATE TABLE `tab1` (
`tab1_id` varchar(11) default NULL,
`name` varchar(45) default NULL,
`pass` varchar(45) default NULL,
`tel` varchar(45) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*!添加表1数据*/;
INSERT INTO `tab1` (`tab1_id`,`name`,`pass`,`tel`) VALUES
('tteeyy','test','yyrr','13545789545');
#创建插入表数据触发器
DROP TRIGGER /*!50030 IF EXISTS */ `bbs2`;
DELIMITER $$
CREATE DEFINER = `root`@`localhost` TRIGGER `bbs2` AFTER INSERT ON `tab1` FOR EACH ROW insert into tab2(tab2_id,name,pass,phone) values(NEW.tab1_id,new.name,new.pass,new.tel) $$
DELIMITER ;
#创建更新表数据触发器
DROP TRIGGER /*!50030 IF EXISTS */ `bbs1`;
DELIMITER $$
CREATE DEFINER = `root`@`localhost` TRIGGER `bbs1` AFTER UPDATE ON `tab1` FOR EACH ROW update tab2 set tab2_id=NEW.tab1_id,name=new.name,pass=new.pass,phone=new.tel where tab2_id=NEW.tab1_id $$
DELIMITER ;
#创建删除表数据触发器
DROP TRIGGER /*!50030 IF EXISTS */ `bbs3`;
DELIMITER $$
CREATE DEFINER = `root`@`localhost` TRIGGER `bbs3` AFTER DELETE ON `tab1` FOR EACH ROW delete from tab2 where tab2_id=old.tab1_id $$
DELIMITER ;
#建表
DROP TABLE IF EXISTS `tab2`;
CREATE TABLE `tab2` (
`tab2_id` varchar(11) default NULL,
`name` varchar(45) default NULL,
`pass` varchar(45) default NULL,
`phone` varchar(45) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `tab2` (`tab2_id`,`name`,`pass`,`phone`) VALUES
('tteeyy','test','yyrr','13545789545');
--------------------------------------------------------------------------
#修改的触发器
CREATE TRIGGER bbs1 AFTER UPDATE ON tab1 FOR EACH ROW update tab2 set
tab2_id=NEW.tab1_id,name=new.name,pass=new.pass,phone=new.tel where
tab2_id=NEW.tab1_id;
END;
#添加的触发器
CREATE TRIGGER bbs2 AFTER insert ON tab1 FOR EACH ROW insert into tab2
(tab2_id,name,pass,phone) values(NEW.tab1_id,new.name,new.pass,new.tel);
END;
#删除的触发器
CREATE TRIGGER bbs3 AFTER delete ON tab1 FOR EACH ROW delete from tab2
where tab2_id=old.tab1_id;
END;
#删除触发器
drop trigger 触发器名字
CREATE TABLE `tab1` (
`tab1_id` varchar(11) default NULL,
`name` varchar(45) default NULL,
`pass` varchar(45) default NULL,
`tel` varchar(45) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*!添加表1数据*/;
INSERT INTO `tab1` (`tab1_id`,`name`,`pass`,`tel`) VALUES
('tteeyy','test','yyrr','13545789545');
#创建插入表数据触发器
DROP TRIGGER /*!50030 IF EXISTS */ `bbs2`;
DELIMITER $$
CREATE DEFINER = `root`@`localhost` TRIGGER `bbs2` AFTER INSERT ON `tab1` FOR EACH ROW insert into tab2(tab2_id,name,pass,phone) values(NEW.tab1_id,new.name,new.pass,new.tel) $$
DELIMITER ;
#创建更新表数据触发器
DROP TRIGGER /*!50030 IF EXISTS */ `bbs1`;
DELIMITER $$
CREATE DEFINER = `root`@`localhost` TRIGGER `bbs1` AFTER UPDATE ON `tab1` FOR EACH ROW update tab2 set tab2_id=NEW.tab1_id,name=new.name,pass=new.pass,phone=new.tel where tab2_id=NEW.tab1_id $$
DELIMITER ;
#创建删除表数据触发器
DROP TRIGGER /*!50030 IF EXISTS */ `bbs3`;
DELIMITER $$
CREATE DEFINER = `root`@`localhost` TRIGGER `bbs3` AFTER DELETE ON `tab1` FOR EACH ROW delete from tab2 where tab2_id=old.tab1_id $$
DELIMITER ;
#建表
DROP TABLE IF EXISTS `tab2`;
CREATE TABLE `tab2` (
`tab2_id` varchar(11) default NULL,
`name` varchar(45) default NULL,
`pass` varchar(45) default NULL,
`phone` varchar(45) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `tab2` (`tab2_id`,`name`,`pass`,`phone`) VALUES
('tteeyy','test','yyrr','13545789545');
--------------------------------------------------------------------------
#修改的触发器
CREATE TRIGGER bbs1 AFTER UPDATE ON tab1 FOR EACH ROW update tab2 set
tab2_id=NEW.tab1_id,name=new.name,pass=new.pass,phone=new.tel where
tab2_id=NEW.tab1_id;
END;
#添加的触发器
CREATE TRIGGER bbs2 AFTER insert ON tab1 FOR EACH ROW insert into tab2
(tab2_id,name,pass,phone) values(NEW.tab1_id,new.name,new.pass,new.tel);
END;
#删除的触发器
CREATE TRIGGER bbs3 AFTER delete ON tab1 FOR EACH ROW delete from tab2
where tab2_id=old.tab1_id;
END;
#删除触发器
drop trigger 触发器名字
相关文章推荐
- MySQL 下创建触发器
- mysql创建触发器
- 什么是MySQL触发器 ?如何利用mysql创建一个触发器?
- 关于MySQL中的触发器和创建表
- mysql创建触发器
- mysql创建触发器错误提示:Can not update in stored function/trigger already used by statement invoked
- MySQL学习笔记--触发器的创建与删除及使用注意事项
- 【mysql】-创建存储和触发器
- mysql存储过程、函数和触发器的创建
- MySQL如何创建触发器
- mysql 把当前行数据作为子查询的条件、基于join的update、创建触发器
- MySql创建触发器
- mysql中的存储过程、触发器、视图是如何创建的,以及PHP中是如何调用的
- mysql创建触发器
- 【MySQL】MySQL创建触发器及相关资料
- MySQL创建触发器的时候报1419错误( 1419 - You do not have the SUPER privilege and binary logging is enabled )
- mysql存储过程、函数和触发器的创建 [转]
- mysql 触发器的创建和使用
- mysql 触发器不能创建表
- mysql学习之创建简单触发器