這章講述了觸發器中的兩個關鍵字的區別
首先,如何建立觸發器,格式如下:
delimiter $$
create
trigger 《觸發器名》before/after insert/update/delete on
for each row begin
end$$
delimiter ;
無論是insert/update/delete觸發器,它們都有乙個before或者after關鍵字
這兩個關鍵字的區別:
before 就是在insert/update/delete操作之前執行觸發器
after 就是在insert/update/delete操作之後執行觸發器
注意:mysql目前不支援多個具有同乙個動作,同一時間,同一事件,同一地點的觸發器(不然會出錯)!
觸發器中Before與After區別
基本概念 after 是先完成資料的增刪改,然後再觸發,觸發的語句晚於監視的增刪改,無法影響前面的增刪改動作 也就是說先插入訂單記錄,再更新商品數量。當商品數量少於訂單數量時造成爆庫。before 先完成觸發,在進行增刪改,觸發語句先於監視的增刪改,我們就有機會判斷,修改即將發生的操作。如 我們在觸...
mysql之觸發器before和after的區別
我們先做個測試 接上篇日誌建的商品表g和訂單表o和觸發器 假設 假設商品表有商品1,數量是10 我們往訂單表插入一條記錄 insert into o gid,much values 1,20 會發現商品1的數量變為 10了。這就是問題的所在,因為我們之前建立的觸發器是after,也就是說觸發的語句是...
mysql之觸發器before和after的區別
我們先做個測試 接上篇日誌建的商品表g和訂單表o和觸發器 假設 假設商品表有商品1,數量是10 我們往訂單表插入一條記錄 insert into o gid,much values 1,20 會發現商品1的數量變為 10了。這就是問題的所在,因為我們之前建立的觸發器是after,也就是說觸發的語句是...