亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網(wǎng)絡(luò),我們將竭誠為您提供優(yōu)質(zhì)的服務(wù)! 誠征網(wǎng)絡(luò)推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯(lián)系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業(yè)務(wù)咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發(fā)消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術(shù)支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當(dāng)前位置:首頁 >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

MySQL觸發(fā)器正確使用方法

添加時間:2012-4-19  添加: admin 

以下的文章主要描述的是如何對MySQL觸發(fā)器進(jìn)行正確使用, MySQL數(shù)據(jù)庫是在5.0 以后的相關(guān)版本中對MySQL觸發(fā)器進(jìn)行引用,有時也可以用相關(guān)的觸發(fā)器對數(shù)據(jù)的完整性進(jìn)行維護(hù)。如我有一個表ge_element。

該表中有一個region_id,對應(yīng)到ge_region表中的id,但是,region_id是可以為空的,所以不應(yīng)該設(shè)置外鍵約束,而我在刪除ge_region表中的記錄時,希望把在ge_element表中被引用到的記錄的region_id設(shè)為0,因為沒有數(shù)據(jù)庫的外鍵約束,我只能在程序中操作,但我又不想通過程序來操作,因為引用region_id的表可能不只ge_element一個,這時,就可能用到MySQL觸發(fā)器,在刪除ge_region表中的記錄時,把被引用的表中的region_id設(shè)為0。

1.創(chuàng)建觸發(fā)器的語句:

CREATE TRIGGER <觸發(fā)器名稱> <--

{ BEFORE | AFTER }


{ INSERT | UPDATE | DELETE }


ON <表名稱>


FOR EACH ROW


<觸發(fā)器SQL語句>


觸發(fā)器必須有名字,最多64個字符,可能后面會附有分隔符.它和MySQL中其他對象的命名方式基本相象.

這里我有個習(xí)慣:就是用表的名字+'_'+觸發(fā)器類型的縮寫.因此如果是表t26,觸發(fā)器是在事件UPDATE(參考下面的點(2)和(3))之前(BEFORE)的,那么它的名字就是t26_bu。

可以直接在EMS中創(chuàng)建觸發(fā)器。

2.觸發(fā)時間:

Before表示在事件發(fā)生之前執(zhí)行MySQL觸發(fā)器,After表示在事件發(fā)生之后執(zhí)行觸發(fā)器;

3.觸發(fā)事件:

三個事件:insert, update, delete

4.觸發(fā)器與表的關(guān)系:

觸發(fā)器是屬于一個表的,當(dāng)在這個表上執(zhí)行insert, update, delete操作時,就會導(dǎo)致相應(yīng)的觸發(fā)器被激活;

不能給同一個表的同一個操作創(chuàng)建兩個不同的觸發(fā)器。

5.觸發(fā)間隔:

FOR EACH ROW 子句通知MySQL觸發(fā)器每隔一行執(zhí)行一次動作,而不是對整下表執(zhí)行一次。

6.觸發(fā)的SQL語句:

觸發(fā)器包含所要觸發(fā)的SQL語句:這里的語句可以是任何合法的語句,包括復(fù)合語句,但是這里的語句受的限制和函數(shù)的一樣。

復(fù)合語句(BEGIN / END)是合法的.

流控制(Flow-of-control)語句(IF, CASE, WHILE, LOOP, WHILE, REPEAT, LEAVE,ITERATE)也是合法的.

變量聲明(DECLARE)以及指派(SET)是合法的.

允許條件聲明.

異常處理聲明也是允許的.

但是在這里要記住函數(shù)有受限條件:不能在函數(shù)中訪問表.因此在函數(shù)中使用以下語句是非法的。

7.創(chuàng)建觸發(fā)器的權(quán)限:

你必須要有相當(dāng)大的權(quán)限才能夠創(chuàng)建MySQL觸發(fā)器;我在創(chuàng)建觸發(fā)器的時候提示要有super privilege才可以創(chuàng)建

關(guān)鍵字:MySQL、觸發(fā)器、正確使用

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡(luò)有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國增值電信業(yè)務(wù)經(jīng)營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網(wǎng)站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網(wǎng)安 舉報有獎  警警  手機打開網(wǎng)站