国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

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

2024-07-25 19:08:47
字體:
來源:轉載
供稿:網友

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

如何禁用觸發器呢?

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 '學生編號', `MATH` double DEFAULT NULL COMMENT '成績', PRIMARY KEY (`ID`)) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;

2.然后給demo_1創建一個觸發器

DROP TRIGGER IF EXISTS `insertTragger`;DELIMITER ;;CREATE TRIGGER `insertTragger` AFTER INSERT ON `demo_1` FOR EACH ROW beginselect 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.觸發器是:在demo_1中添加一條數據時,demo_2中自動添加一條數據。

4.但是我不想每次出入數據都觸發觸發器呢,只有在我想觸發的時候才觸發。

重新編寫觸發器:

DROP TRIGGER IF EXISTS `insertTragger`;DELIMITER ;;CREATE TRIGGER `insertTragger` AFTER INSERT ON `demo_1` FOR EACH ROW beginif @enable_trigger = 1 thenselect 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.調用觸發器

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

6.禁用觸法器

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

表demo_2中沒有增加任何數據

以上就解決了觸發器的靈活調用。

總結

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


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黄龙县| 嵊泗县| 宁陕县| 玛纳斯县| 婺源县| 武陟县| 特克斯县| 泰兴市| 宁南县| 武安市| 邵阳市| 平凉市| 白水县| 塔城市| 宾川县| 察哈| 子洲县| 衡南县| 阿鲁科尔沁旗| 青岛市| 红桥区| 东兰县| 潞城市| 西城区| 铁岭县| 韶关市| 巴东县| 玉屏| 嘉义县| 景谷| 囊谦县| 静宁县| 田林县| 繁昌县| 四平市| 奉化市| 晋州市| 海安县| 南宁市| 台南市| 平和县|