mysql高級進階---觸發器實戰--給新用戶發郵件

觸發器

觸發器( trigger )用於監視某種情況並觸發某種操作,它是與表事件相關的特殊的存儲過程,它的執行不是由程序調用,而是由事件來觸發。例如,當對某張表進行insert. delete、 update操作時就會觸發執行它。

#創建觸發器語法
CREATE TRIGGER trigger_name trigger._time trigger_event ON table_name FOR EACH ROW trigger_stmt
參數說明:
trigger_name :觸發器名稱
trigger_time :觸發時間,取值有before. after
trigger_event :觸發事件,取值有insert. update、 delete
table_name :觸發器監控的表名
trigger_stmt :觸發執行的語句,可以使用OLD. NEW來引用變化前後的記錄內容
NEW.columnName :獲取INSERT觸發事件中新插入的數據
OLD.columnName :獲取UPDATE和DELETE觸發事件中被更新、刪除的數據

測試數據及需求參見上一講
drop table if exists user_info;
drop table if exists email_info;
create table user_info(
	id int not null auto_increment primary key, 
	name varchar(30),
	email varchar(50)
);
insert into user_info(id, name, email) values(1, 'liusan','[email protected]);
insert into user_info(id, name, email) values(2, '張三,'[email protected]');

create table email_info(
	id int not null auto_increment primary key,
	email varchar(50),
	content text,
	send_time datetime
);

觸發器的實現
見下圖

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章