MySQL 觸發器的基本操作

2021-10-13 20:37:42 字數 1534 閱讀 4925

1、 作業系統:window10

2、 mysql 5.7

1.在sc表中建立insert、update觸發器,檢查學號是否為student表中的學號,若無則不許插入選課記錄或修改選課表學生學號。

1.1 建立insert觸發器:

delimiter

//create

trigger tr_sc_in_sno after

insert

on sc

for each row

begin

if new.sno notin(

select sno from student)

then

signal sqlstate '45000'

set message_text=

'insert error'

;endif;

end;

//delimiter

;

1.2 建立update觸發器:

2.在sc表中錄入或修改實驗資料,檢視觸發器的執**況。

首先檢視student表中存在的學生學號,如下所示:

2.1 在sc表中錄入資料:

insert

into sc values

('2006005'

,'2',80

);

執行結果:

11:22:32 insert into sc values (『2006005』,『2』,80) error code: 1644. insert error 0.015 sec

2.2 在sc表中修改資料:

update sc set sno=

'2006005'

where sno=

'2005005'

;

執行結果:

11:25:15 update sc set sno=『2006005』 where sno=『2005005』 error code: 1644. update error 0.000 sec

MYSQL觸發器的操作

1 為什麼使用觸發器 觸發器是mysql的資料庫物件之一,那為什麼要使用觸發器呢?在開發具體專案時,經常會遇到如下例項 在學生表中擁有字段學生姓名,字段學生總數,每當新增一條關於學生記錄時,學生的總數就必須同時改變。在顧客資訊表中擁有字段顧客名字,字段顧客的 和字段顧客的位址,每當新增一條顧客記錄時...

MySQL觸發器的操作

資料庫物件觸發器用來實現由一些表事件觸發的某個操作,當執行表事件時,則會啟用觸發器,從而執行其包含的操作 mysql在觸發以下語句時,會自動執行所設定的操作 delete insert update語句,其他sql語句則不會啟用觸發器 觸發器的操作包括建立觸發器,檢視觸發器和刪除觸發器。在mysql...

Mysql 觸發器的操作

例子 在資料庫company中存在兩個表物件 部門表 t dept 和日記表 t diary 建立觸發器實現向部門表中插入記錄時,就會在插入之前向日記表中插入當前時間。部門表 日記表 建立觸發器 插入記錄 結果 日記表也多了一條記錄 語法 例子 建立觸發器實現當前向部門表中插入記錄時,就會在插入之後...