建立觸發器的語法如下:
create trigger trigger_name trigger_time trigger_event
on tbl_name for each row trigger_stmt
trigger_time 是觸發器的觸發時間,可以是before 或者after,before 的含義指在檢查約束前觸發,而after 是在檢查約束後觸發。
而trigger_event 就是觸發器的觸發事件,可以是insert、update 或者delete。
對同乙個表相同觸發時間的相同觸發事件,只能定義乙個觸發器。
觸發器只能建立在永久表(permanent table)上,不能對臨時表(temporary table)建立觸發器。
舉例delimiter $$
create trigger ins_film
after insert on film for each row begin
insert into film_text (film_id, title, description)
values (new.film_id, new.title, new.description);
end;
delimiter ;
刪除觸發器
mysql> drop trigger ins_film;
my sql 觸發器 mysql建立觸發器
首先,我們來了解一下什麼是觸發器,觸發器,就是在對一張表資料進行增 insert 刪 delete 改 update 的時候,為了保持資料的一致性,對別的表也要進行相應的資料修改。我們都知道mysql最後事務提交後,資料是會儲存到磁碟上的,那麼每次在insert,delete,update時候舊資料...
mysql部落格園 mysql
一 聯合查詢 在兩種情況下可能用到 1 想要的結果在一條語句中會引起邏輯衝突,只能放在兩條語句中是要使用聯合查詢 2 一張表的資料量非常大時,會分隔成多張表儲存,要查詢時也要用到聯合查詢 2,聯合查詢中的order by必須搭配上limit關鍵字才能生效!因為系統預設的聯合查詢的結果往往比較多,所以...
mysql建立觸發器
注 觸發器中不能呼叫儲存過程,觸發器功能應盡量簡單 use d database name 切換到資料庫 set names utf8 drop if exists when update can use drop trigger if exists tr update bind sno delim...