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

Mysql创建触发器实现不同表的插入、更新、删除操作

2015-11-01 20:34 921 查看
说明:Mysql5.0以上的版本才支持下面的操作。

Mysql 触发器的插入、更新、删除操作。

在这里建了两个表:其中这两个表的结构不一样,这里给表admin建立触发器

在对表admin操作的同时,触发数据库的触发器,同时操作表users。

1.创建表:
create table admin(id int,name char(30),age int(3),email char(100));

create table users(id int,name char(30),age int(3));

2.创建触发器:

delimiter //    

注:在命令提示符下输入delimiter // 这样是用//替换换行符,这样可避免点击换行键时执行程序。

2.1.插入时触发

drop trigger my_insert;

create trigger my_insert after insert on admin for each row 

begin

insert into users(id,name,age) values(new.id,'new.name',new.age);

end; 

//

2.2.更新时触发
drop trigger my_update;

create trigger my_update after update on admin for each row

begin

update users set name=new.name,age=new.age where id=old.id;

end;

//

2.3.删除时触发
drop trigger my_delete;

create trigger my_delete after delete on admin for each row

begin

delete from users where id=old.id;

end;

//

说明:delimiter //
        在命令提示符下操作,默认情况下,不可能等到用户把这些语句全部输入完之后,再执行整段语句。
因为mysql一遇到分号,它就要自动执行。
即,在语句RETURN '';时,mysql解释器就要执行了。
这种情况下,就需要事先把delimiter换成其它符号,如//或$$。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: