人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

Mysql中禁用與啟動觸發(fā)器教程【推薦】

發(fā)布日期:2022-03-21 11:53 | 文章來源:腳本之家

在使用MYSQL過程中,經(jīng)常會使用到觸發(fā)器,但是有時使用不當(dāng)會造成一些麻煩。有沒有一種辦法可以控制觸發(fā)器的調(diào)用呢?
觸發(fā)器顧名思義就是數(shù)據(jù)庫在一定的調(diào)條件自動調(diào)用的SQL語句,觸發(fā)器拒絕了人工調(diào)用的過程,由數(shù)據(jù)庫MYSQL數(shù)據(jù)庫自動的調(diào)用,執(zhí)行更加高效。

如何禁用觸發(fā)器呢?

1.新建兩張表:

表demo_1:

CREATE TABLE `demo_1` (
 `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
 `STUNAME` varchar(32) DEFAULT NULL COMMENT '名字',
 `AGE` tinyint(4) DEFAULT NULL COMMENT '年齡',
 PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8;

表:demo_2

CREATE TABLE `demo_2` (
 `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
 `STU_ID` int(11) DEFAULT NULL COMMENT '學(xué)生編號',
 `MATH` double DEFAULT NULL COMMENT '成績',
 PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;

2.然后給demo_1創(chuàng)建一個觸發(fā)器

DROP TRIGGER IF EXISTS `insertTragger`;
DELIMITER ;;
CREATE TRIGGER `insertTragger` AFTER INSERT ON `demo_1` FOR EACH ROW begin
select ID INTO @v1 from demo_1 order by ID desc limit 1;
Insert into demo_2(STU_ID, MATH) values(@v1, 98.5);
end
;;
DELIMITER ;

3.觸發(fā)器是:在demo_1中添加一條數(shù)據(jù)時,demo_2中自動添加一條數(shù)據(jù)。

4.但是我不想每次出入數(shù)據(jù)都觸發(fā)觸發(fā)器呢,只有在我想觸發(fā)的時候才觸發(fā)。

重新編寫觸發(fā)器:

DROP TRIGGER IF EXISTS `insertTragger`;
DELIMITER ;;
CREATE TRIGGER `insertTragger` AFTER INSERT ON `demo_1` FOR EACH ROW begin
if @enable_trigger = 1 then
select ID INTO @v1 from demo_1 order by ID desc limit 1;
Insert into demo_2(STU_ID, MATH) values(@v1, 98.5);
end if;
end
;;
DELIMITER ;

5.調(diào)用觸發(fā)器

SET @enable_trigger = 1;
INSERT INTO demo_1(STUNAME , AGE) VALUES(‘小強(qiáng)', 17);
執(zhí)行之后,表demo_1中增加一條數(shù)據(jù)
2 小強(qiáng) 17
表demo_2中同樣也增加一條數(shù)據(jù)
2 2 98.5

6.禁用觸法器

SET @enable_trigger = 0;
INSERT INTO demo_1(STUNAME , AGE) VALUES(‘小強(qiáng)', 17);
執(zhí)行之后:
執(zhí)行之后,表demo_1中增加一條數(shù)據(jù)
2 小強(qiáng) 17

表demo_2中沒有增加任何數(shù)據(jù)

以上就解決了觸發(fā)器的靈活調(diào)用。

總結(jié)

以上所述是小編給大家介紹的Mysql中禁用與啟動觸發(fā)器教程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對本站網(wǎng)站的支持!

香港快速服務(wù)器

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

實(shí)時開通

自選配置、實(shí)時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部