建立觸發器。建立觸發器語法如下:
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 ...