mysql 觸發器 觸發器使用

2021-08-13 05:21:11 字數 1878 閱讀 6466

1、了解什麼是觸發器?

mysql 的觸發器和儲存過程一樣,都是嵌入到mysql的一段程式,觸發器 是由事件觸發某個動作,這些事件包括,插入 ,更新、刪除等語句。如果定義了觸發程式,觸發器就會觸發執行相應的操作。

觸發器( trigger)是個特殊的儲存過程,不同的是,執行儲存過程要使用call語句來呼叫,而觸發器的執行不需要使用call語句來呼叫,也不需要手工啟動,只要當乙個預定義的事件發生的時候,就會被 mysql自動呼叫。比如當對 fruits表進行操作( insert、 delete或 update)時就會啟用它執行。觸發器可以查詢其他表,而且可以包含複雜的sql語句。它們主要用於滿足複雜的業務規則或要求。例如:可以根據客戶當前的賬戶狀態,控制是否允許插入新訂單。本節將介紹如何建立觸

髮器。2、檢視觸發器

show triggers;
3、刪除觸發器

drop

trigger num_sum;

4、建立觸發器

下面用乙個案例講解

4.1、建立業務統計表

create

table

`persons` (

`name`

varchar(40) not

null,

`num`

int(11) not

null

) engine=innodb default charset=utf8 comment='業務統計表';

4.2、建立銷售表

create

table

`sales` (

`name`

varchar(40) not

null,

`sum`

int(11) not

null

) engine=innodb default charset=utf8 comment='銷售額表';

4.3、建立乙個觸發器

create

trigger num_sum after

insert

on persons

foreach

rowinsert

into sales values(new.name,7*new.num);

4.4、向person表中插入記錄

insert

into persons values('zhangsan',20),('laidefa',24);

4.5、查詢persons表 和sales表

select * from persons;

select * from sales;

name    num

zhangsan 20

laidefa 24

name    sum

zhangsan 140

laidefa 168

從執行的結果來看,在persons表插入資料之後,num_sum觸發器,把資料同時插入 到sales 表

5.總結

5.1、使用觸發器時需要特別注意,對於相同的表 和相同的事件,只能建立乙個觸發器。

觸發器使用

觸發器是一種特殊的儲存過程,她不能被顯示的呼叫,而是在對錶增刪改操作後被啟用。所以可以用觸發器對來實施複雜的完整性約束。after 觸發器和instead of 觸發器 sql server 2000 支援兩種型別的觸發器 after 觸發器和instead of 觸發器。其中after 觸發器即為...

觸發器 mysql觸發器

觸發器是一種特殊的儲存過程,它在插入 刪除或修改特定表中的資料時觸發執行,它比資料庫本身標準的功能有更精細和更複雜的資料控制能力。和儲存過程一樣,很少使用。1 觸發器的作用 2 建立觸發器 建立測試環境 mysql create database test db query ok,1 row aff...

MySql觸發器使用講解

觸發器 trigger 是由事件來觸發某個操作。這些事件包括insert語句 update語句和delete語句。當資料庫系統執行這些事件時,就會啟用觸發器執行相應的操作。mysql從5.0.2版本開始支援觸發器。在本文中將講解的內容包括 觸發器的含義和作用 如何建立觸發器 如何檢視觸發器 如何刪除...