婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Mysql中禁用與啟動觸發(fā)器教程【推薦】

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

熱門標(biāo)簽:遵義地圖標(biāo)注app 承德電腦地圖標(biāo)注 合肥營銷外呼系統(tǒng)收費(fèi) 地圖標(biāo)注賺錢真假 陜西400電話如何申請 外呼系統(tǒng)從哪買 深圳 商家地圖標(biāo)注哪個好 德惠市地圖標(biāo)注

在使用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)站的支持!

您可能感興趣的文章:
  • mysql 觸發(fā)器語法與應(yīng)用示例
  • MySql視圖觸發(fā)器存儲過程詳解
  • mysql觸發(fā)器原理與用法實(shí)例分析
  • mysql日志觸發(fā)器實(shí)現(xiàn)代碼
  • mysql觸發(fā)器之觸發(fā)器的增刪改查操作示例
  • mysql觸發(fā)器之創(chuàng)建多個觸發(fā)器操作實(shí)例分析
  • mysql觸發(fā)器之創(chuàng)建使用觸發(fā)器簡單示例
  • mysql觸發(fā)器簡介、創(chuàng)建觸發(fā)器及使用限制分析
  • MySQL 觸發(fā)器定義與用法簡單實(shí)例
  • MySQL觸發(fā)器概念、原理與用法詳解
  • 詳解MySQL數(shù)據(jù)庫之觸發(fā)器

標(biāo)簽:貴州 新余 南陽 揚(yáng)州 三門峽 商丘 巴中 贛州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql中禁用與啟動觸發(fā)器教程【推薦】》,本文關(guān)鍵詞  Mysql,中,禁用,與,啟動,觸發(fā)器,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Mysql中禁用與啟動觸發(fā)器教程【推薦】》相關(guān)的同類信息!
  • 本頁收集關(guān)于Mysql中禁用與啟動觸發(fā)器教程【推薦】的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 洱源县| 珠海市| 阜城县| 福泉市| 商河县| 遂昌县| 略阳县| 偃师市| 屏东县| 枞阳县| 左云县| 苏尼特右旗| 万荣县| 罗甸县| 湖北省| 赤城县| 儋州市| 南木林县| 永嘉县| 泸州市| 宿州市| 株洲县| 论坛| 襄垣县| 达孜县| 崇仁县| 广安市| 张家界市| 苏州市| 咸阳市| 长泰县| 南投县| 开封市| 大埔县| 宁远县| 江孜县| 吐鲁番市| 卓尼县| 汤原县| 通海县| 炎陵县|