mysql建立觸發器

2022-04-08 19:52:25 字數 903 閱讀 6009

建立觸發器。建立觸發器語法如下:

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;

my sql 觸發器 mysql建立觸發器

首先,我們來了解一下什麼是觸發器,觸發器,就是在對一張表資料進行增 insert 刪 delete 改 update 的時候,為了保持資料的一致性,對別的表也要進行相應的資料修改。我們都知道mysql最後事務提交後,資料是會儲存到磁碟上的,那麼每次在insert,delete,update時候舊資料...

mysql建立觸發器

注 觸發器中不能呼叫儲存過程,觸發器功能應盡量簡單 use d database name 切換到資料庫 set names utf8 drop if exists when update can use drop trigger if exists tr update bind sno delim...

mysql建立觸發器

很多時候為了提高查詢效率,我們會在一些表當中增加冗餘字段,例如在客戶表裡面儲存用油卡號,但是如果客戶掛失原卡,申請了新的油卡,冗餘欄位就不正確了,這時候應該怎麼辦呢?我們可以建立乙個觸發器,當客戶插入新的油卡資料的時候同時更新客戶資料。delimiter create trigger update ...