我是靠谱客的博主 欣喜酒窝,这篇文章主要介绍三十八、触发器实战,现在分享给大家,希望可以做个参考。

一、什么是触发器

触发器(trigger)用于监视某种情况并触发某种操作,它是与表时间相关的特殊存储过程。它的执行不是由程序调用,而是由事件来触发的。它只会在对某张表进行 insert、delete 和 update 操作时执行。语法如下:

复制代码
1
2
create trigger trigger_name trigger_time trigger_event ON table_name FOR EACH ROW trigger_stmt

参数:

  1. trigger_name:触发器名称;
  2. trigger_time:触发时间,取值:before、after;
  3. trigger_event:触发事件,取值:insert、update、delete;
  4. table_name:触发器监控的表;
  5. trigger_stmt:触发执行的语句,使用 OLD、NEW 来引用变化前后的记录。NEW.columnName:获取 insert 触发事件中新插入的数据;
    OLD.columnName:获取 update 和 delete 触发事件中被更新、删除的数据。

二、触发器实战

  1. 创建用户表和发件箱表:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
create table users( id int not null auto_increment primary key, name varchar(30), email varchar(30) ); create table emails( id int not null auto_increment primary key, email varchar(30), content text. send_datetime datetime );
  1. 编写触发器,在新增新用户的时候向发件箱插入一条邮件:
复制代码
1
2
3
4
5
6
7
8
delimiter // create trigger add_email after insert on users for each row begin insert into emails(email,content,send_datetime) values (NEW.email,'hello' ,now()); end // delimiter ;

最后

以上就是欣喜酒窝最近收集整理的关于三十八、触发器实战的全部内容,更多相关三十八、触发器实战内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部