老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網站建設、域名注冊、服務器等服務

mysql觸發(fā)器如何寫

這篇文章主要介紹了MySQL觸發(fā)器如何寫,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)公司于2013年成立,公司以網站建設、成都網站建設、系統(tǒng)開發(fā)、網絡推廣、文化傳媒、企業(yè)宣傳、平面廣告設計等為主要業(yè)務,適用行業(yè)近百種。服務企業(yè)客戶上千多家,涉及國內多個省份客戶。擁有多年網站建設開發(fā)經驗。為企業(yè)提供專業(yè)的網站建設、創(chuàng)意設計、宣傳推廣等服務。 通過專業(yè)的設計、獨特的風格,為不同客戶提供各種風格的特色服務。

觸發(fā)器是與 MySQL 數據表有關的數據庫對象,在滿足定義條件時觸發(fā),并執(zhí)行觸發(fā)器中定義的語句集合。觸發(fā)器的這種特性可以協(xié)助應用在數據庫端確保數據的完整性。

語法格式如下:

CREATE <觸發(fā)器名> < BEFORE | AFTER >

ON <表名> FOR EACH Row<觸發(fā)器主體>

語法說明如下。

1) 觸發(fā)器名

觸發(fā)器的名稱,觸發(fā)器在當前數據庫中必須具有唯一的名稱。如果要在某個特定數據庫中創(chuàng)建,名稱前面應該加上數據庫的名稱。

2) INSERT | UPDATE | DELETE

觸發(fā)事件,用于指定激活觸發(fā)器的語句的種類。

注意:三種觸發(fā)器的執(zhí)行時間如下。INSERT:將新行插入表時激活觸發(fā)器。例如,INSERT 的 BEFORE 觸發(fā)器不僅能被 MySQL 的 INSERT 語句激活,也能被 LOAD DATA 語句激活。DELETE: 從表中刪除某一行數據時激活觸發(fā)器,例如 DELETE 和 REPLACE 語句。UPDATE:更改表中某一行數據時激活觸發(fā)器,例如 UPDATE 語句。

3) BEFORE | AFTER

BEFORE 和 AFTER,觸發(fā)器被觸發(fā)的時刻,表示觸發(fā)器是在激活它的語句之前或之后觸發(fā)。若希望驗證新數據是否滿足條件,則使用 BEFORE 選項;若希望在激活觸發(fā)器的語句執(zhí)行之后完成幾個或更多的改變,則通常使用 AFTER 選項。

4) 表名

與觸發(fā)器相關聯(lián)的表名,此表必須是永久性表,不能將觸發(fā)器與臨時表或視圖關聯(lián)起來。在該表上觸發(fā)事件發(fā)生時才會激活觸發(fā)器。同一個表不能擁有兩個具有相同觸發(fā)時刻和事件的觸發(fā)器。例如,對于一張數據表,不能同時有兩個 BEFORE UPDATE 觸發(fā)器,但可以有一個 BEFORE UPDATE 觸發(fā)器和一個 BEFORE INSERT 觸發(fā)器,或一個 BEFORE UPDATE 觸發(fā)器和一個 AFTER UPDATE 觸發(fā)器。

5) 觸發(fā)器主體

觸發(fā)器動作主體,包含觸發(fā)器激活時將要執(zhí)行的 MySQL 語句。如果要執(zhí)行多個語句,可使用 BEGIN…END 復合語句結構。

6) FOR EACH ROW

一般是指行級觸發(fā),對于受觸發(fā)事件影響的每一行都要激活觸發(fā)器的動作。例如,使用 INSERT 語句向某個表中插入多行數據時,觸發(fā)器會對每一行數據的插入都執(zhí)行相應的觸發(fā)器動作。

注意:每個表都支持 INSERT、UPDATE 和 DELETE 的 BEFORE 與 AFTER,因此每個表最多支持 6 個觸發(fā)器。每個表的每個事件每次只允許有一個觸發(fā)器。單一觸發(fā)器不能與多個事件或多個表關聯(lián)。

另外,在 MySQL 中,若需要查看數據庫中已有的觸發(fā)器,則可以使用 SHOW TRIGGERS 語句。

例子:

BEGIN    
IF new.state  in ('2','3')  then  
  INSERT INTO `userservice`.`ehome_us_green_examine` 
(modifydate,modifyuser,brancCode,stateDescription,state,
userID,fromSystemkey,applydate,makeHospitalName,illnessName,
userName,rightsholderName,tranno) 
VALUES ( sysdate(), 'manage', old.brancCode, old.stateDescription, new.state, 
'', old.fromSystemkey, old.applydate,old.makeHospitalName,old.illnessName,
old.userName,old.rightsholderName, old.tranno);
END IF;  
END

這個觸發(fā)器比較簡單,

1、BEGIN到END,之間是對數據庫的操作

2、IF到END IF之間是判斷,你想的對,就是如果。。。的意思

3、new.state  in ('2','3') 這句的意思是:該表的字段state為(2或者3)的時候

4、執(zhí)行下面的插入語句,new為新值,old是原來的值(如old.userName就是原來的這個字段的值)

5、整個觸發(fā)器翻譯成白話就是,如果該表的state變成2或者3的時候,執(zhí)行下面的插入語句

備注:那么觸發(fā)器是發(fā)生在狀態(tài)變化之前還是之后呢?選Before或者After,顧名思義!

感謝你能夠認真閱讀完這篇文章,希望小編分享mysql觸發(fā)器如何寫內容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細的解決方法等著你來學習!


文章名稱:mysql觸發(fā)器如何寫
本文路徑:http://www.xueling.net.cn/article/jgghij.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 亚洲一及片 | 一级a毛片高清视频 | 欧美在线色 | 五月婷六月婷婷俺也去 | 女人张开腿让男人桶个爽 | 四色av网站入口 | 日韩欧无码一区二区三区免费不卡 | 国产高清精品91在线 | 亚洲国产精品欧美久久 | 日日躁夜夜躁狠狠躁aⅴ蜜 国产精品人成A片一区二区 | 日本视频一二三区中文字幕 | www·色| 永久免费AV无码网站在线 | 在线精品自偷自拍无码中文 | videos性欧美另类高清 | 国产精品日本一区二区三区在线 | 久久精品夜 | 日韩人妻一区二区三区蜜桃视频 | 强行糟蹋人妻HD中文 | 久久精品动漫一区二区三区 | 亚洲国产日韩欧美 | 得得啪在线视频 | 国产精品毛片在线 | 亚洲领先的自拍视频网站 | 北条麻妃在线一区二区免费播放 | 亚欧美一区二区 | 海浪在线观看免费版 | 亚洲中文无码av永久不收费 | 成人欧美一区二区三区色青冈 | 久久厕所偷拍视频 | 免费日韩视频在线观看 | 日日噜噜夜夜狠狠久久无码区 | 刺激一区仑乱 | 91精品国产综合久久国产大片 | 免费观看又污又黄的网站 | 欧美精品国产制服第一页 | 久久国产色AV免费观看 | 中国黄色片视频 | 欧美一级淫片免费视频欧美辣图 | 日皮视频在线观看 | 草草免费视频 |