av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

MySQL觸發(fā)器的實(shí)例演示

以下的文章主要介紹的是MySQL 觸發(fā)器的簡單實(shí)例,本文主要是以相關(guān)語法來引出MySQL 觸發(fā)器的實(shí)際應(yīng)用,以下就是文章的具體內(nèi)容描述,希望會(huì)給你帶來一些幫助在學(xué)習(xí)MySQL 觸發(fā)器方面。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比克山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式克山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋克山地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。

語法

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

{ BEFORE | AFTER } 觸發(fā)器有執(zhí)行的時(shí)間設(shè)置:可以設(shè)置為事件發(fā)生前或后。

{ INSERT | UPDATE | DELETE } 同樣也能設(shè)定觸發(fā)的事件:它們可以在執(zhí)行insert、update或delete的過程中觸發(fā)。

ON <表名稱> 觸發(fā)器是屬于某一個(gè)表的:當(dāng)在這個(gè)表上執(zhí)行插入、 更新或刪除操作的時(shí)候就導(dǎo)致觸發(fā)器的激活. 我們不能給同一張表的同一個(gè)事件安排兩個(gè)觸發(fā)器。

FOR EACH ROW 觸發(fā)器的執(zhí)行間隔:FOR EACH ROW子句通知MySQL 觸發(fā)器 每隔一行執(zhí)行一次動(dòng)作,而不是對整個(gè)表執(zhí)行一次。

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

你必須擁有相當(dāng)大的權(quán)限才能創(chuàng)建MySQL 觸發(fā)器(CREATE TRIGGER),如果你已經(jīng)是Root用戶,那么就足夠了。這跟SQL的標(biāo)準(zhǔn)有所不同。

實(shí)例

Example1:

創(chuàng)建表tab1

 
 
 
  1. DROP TABLE IF EXISTS tab1;  
  2. CREATE TABLE tab1(  
  3. tab1_id varchar(11)  
  4. ); 

創(chuàng)建表tab2

 
 
 
  1. DROP TABLE IF EXISTS tab2;  
  2. CREATE TABLE tab2(  
  3. tab2_id varchar(11)  
  4. ); 

創(chuàng)建MySQL 觸發(fā)器:t_afterinsert_on_tab1

作用:增加tab1表記錄后自動(dòng)將記錄增加到tab2表中

 
 
 
  1. DROP TRIGGER IF EXISTS t_afterinsert_on_tab1;  
  2. CREATE TRIGGER t_afterinsert_on_tab1   
  3. AFTER INSERT ON tab1  
  4. FOR EACH ROW  
  5. BEGIN  
  6. insert into tab2(tab2_id) values(new.tab1_id);  
  7. END 

測試一下

 
 
 
  1. INSERT INTO tab1(tab1_id) values('0001'); 

看看結(jié)果

 
 
 
  1. SELECT * FROM tab1;  
  2. SELECT * FROM tab2; 

Example2:

創(chuàng)建觸發(fā)器:t_afterdelete_on_tab1

作用:刪除tab1表記錄后自動(dòng)將tab2表中對應(yīng)的記錄刪去

 
 
 
  1. DROP TRIGGER IF EXISTS t_afterdelete_on_tab1;  
  2. CREATE TRIGGER t_afterdelete_on_tab1  
  3. AFTER DELETE ON tab1  
  4. FOR EACH ROW  
  5. BEGIN  
  6. delete from tab2 where tab2_id=old.tab1_id;  
  7. END; 

測試一下

 
 
 
  1. DELETE FROM tab1 WHERE tab1_id='0001'; 

 

看看結(jié)果

 
 
 
  1. SELECT * FROM tab1;  
  2. SELECT * FROM tab2; 

 以上的相關(guān)內(nèi)容就是對

MySQL 觸發(fā)器簡單實(shí)例的介紹,望你能有所收獲。


分享標(biāo)題:MySQL觸發(fā)器的實(shí)例演示
轉(zhuǎn)載來于:http://uogjgqi.cn/article/ccdehgg.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們在微信上24小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流