第8章 觸發器

2021-08-28 09:32:33 字數 1166 閱讀 4386

*重點一:觸發器

1.定義:觸發器是在對錶或檢視進行插入、更新或刪除操作是自動執行的儲存過程,有事務的特徵,可以跨表操作。

2.分類:

(1)after觸發器(只能定義在表上)

insert觸發器

update觸發器

delete觸發器

(2)insert of觸發器(可以定義在表和檢視上)  

3.語法:create triffer trigger_name

on table_name         --要檢測的表

[with encryprion]

[for/instead of]      --觸發器型別(檢視只能用instead of)

[delete,insert,update] --要監測的操作

ast-sql語句

go4.工作原理:

(1)先從表中刪除要更新的行。

(2)把刪除的行的副本插入deleted表中。

(3)再向原表中插入新行。

(4)把新行的副本插入inserted表。

(5)檢查deleted和inserted表中的資料,確定是否需要回滾或其他操作。

if exists(select * from sys.triggers where name='trigger_del')

drop trigger trigger_delgo

create trigger trigger_del

on stuinfo ---要監測的表

with encryption

for delete

asif exists(select * from sys.tables where name='stuinfo2')

begin

insert into stuinfo2 select stuname,stu***,classid from deleted --如果表中主鍵是自動增長,則不能把主鍵列存入新錶中

endelse

begin

select stuname,stu***,classid into stuinfo2 from deleted

endgo

delete from stuinfo

select * from stuinfo2

第12章 觸發器

12.1 建立觸發器 12.1.1建立只有乙個執行語句的觸發器 建立乙個 觸發器的語法如下 create trigger trigger name trigger time trigger event on tb1 name for each row rtigger stmt trigger nam...

PL SQL 第13章 使用觸發器

1.語句觸發器的語法如下 create or replace trigger trigger name timing event1 or event2 or event3 on table name pl sql block 如上所示,timing用於指定觸發時機 before或after even...

SQL Server系列 8 觸發器

觸發器是一種特殊型別的儲存過程 乙個操作可以呼叫多個觸發器 建立 插入 觸發器 create trigger trigger insert on 表123 for insert as begin print 插入觸發器 被呼叫 end 呼叫 插入 觸發器 insert into 表123 姓名,年齡...