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

首頁 > 數據庫 > MySQL > 正文

MySQL系列教程二---觸發器

2024-07-24 12:59:47
字體:
來源:轉載
供稿:網友

1. 觸發器簡介

觸發器是一個特殊的存儲過程,執行存儲過程需要使用CALL語句來調用,但是觸發器的執行不需要用CALL語句調用,也不需要手工啟動,只要的當一個預定義的事件發生時,就會被MySQL自動調用。比如當對fruits表進行INSERT,DELETE或UPDATE操作時就會激活它。觸發器可以查詢數據表,而且可以包含復雜的SQL語句,主要用于復雜的業務規則或要求。

1.1創建只包含一個執行語句的觸發器

CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR RACH ROW trigger_stmt

trigger_name:觸發器名稱,用戶自行指定; trigger_time:觸發時機,取值為 BEFORE 或 AFTER; trigger_event:觸發事件,取值為 INSERT、UPDATE 或 DELETE; tbl_name:建立觸發器的表名,即在哪張表上建立觸發器; trigger_stmt:觸發器程序體,可以是一句SQL語句,或者用 BEGIN 和 END 包含的多條語句。

由此可見,可以建立6種觸發器,即:BEFORE INSERT、BEFORE UPDATE、BEFORE DELETE、AFTER INSERT、AFTER UPDATE、AFTER DELETE。

另外有一個限制是不能同時在一個表上建立2個相同類型的觸發器,因此在一個表上最多建立6個觸發器。

2.查看觸發器

查看觸發器是指查看數據庫中存在的觸發器的定義、狀態和語法信息等。本節介紹兩種查看觸發器的方法,分別為show triggers語句查看和在triggers表中查看觸發器信息。

2.1用show triggers語句查看

語句如下:

SHOW TRIGGERS;

直接使用該條語句查看的信息可能有些混亂,可以在該條語句之后加上”/G”顯示信息會比較有條理;

2.2在triggers表中查看觸發器信息

在MySQL中,所有的觸發器的定義都存在于INFORMATION_SCHEMA數據庫的triggers表中,可以通過查詢命令SELECT來查看,具體語法如下:

SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE condition;

3.刪除觸發器

使用DROP TRIGGERS語句可以刪除觸發器,基本語法如下:

DROP TRIGGERS [schema_name.]trigger_name

其中,schema_name是數據庫的名稱,是可選的。如果省略了schema,將從當前數據庫中舍棄觸發程序。trigger_name是要刪除的觸發器的名稱。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东丰县| 罗甸县| 高平市| 饶河县| 凉城县| 淮南市| 商城县| 东乌珠穆沁旗| 五常市| 乌兰浩特市| 大埔区| 庆安县| 景宁| 宁陵县| 松桃| 万载县| 若羌县| 金川县| 望都县| 竹山县| 肇庆市| 治多县| 乡宁县| 岐山县| 沽源县| 英吉沙县| 乾安县| 吉安市| 秦安县| 罗城| 泽库县| 邵阳县| 东辽县| 靖西县| 福鼎市| 思茅市| 萨嘎县| 萨嘎县| 新蔡县| 烟台市| 济南市|