簡單的觸發器

2022-02-07 08:59:08 字數 1528 閱讀 4857

定義: 何為觸發器?在sql server裡面也就是對某乙個表的一定的操作,觸發某種條件,從而執行的一段程式。觸發器是乙個特殊的儲存過程。

常見的觸發器有三種:分別應用於insert , update , delete 事件。

表一:news表

create table [dbo].[news](

[id] [int] identity(1,1) not null,

[title] [nvarchar](50) null,

[contents] [nvarchar](50) null

)表二:newsdel記錄被刪除、被修改過的news資訊

create table [dbo].[newsdel](

[id] [int] identity(1,1) not null,

[newsid] [int] null,

[title] [nvarchar](50) null,

[contents] [nvarchar](50) null

觸發器的基本語法:

create trigger newsdeleted         -----建立觸發器,名稱可以自己隨便叫

on news                                     -----表名稱,即操作的物件,可多個

for delete                                   -----事件,一般為insert , update , delete 事件,可多選

as insert into newsdel(newsid,title,contents)               ---------------要執行的sql

select id,title,contents from deleted                      

注意:inserted臨時表,表示新插入的資訊,也包括新加的和修改後的新資訊;

deleted臨時表,表示被刪除的資訊,也包括被修改前的資訊

1>把刪除的news資訊儲存在newsdel表中,我們需要乙個delete觸發器:

create trigger newsdeleted 

on news 

for delete 

as insert into newsdel(newsid,title,contents) 

select id,title,contents from deleted

2>把修改前的news資訊儲存在newsdel表中,我們需要乙個update觸發器:

create trigger newsupdated

on news 

for update 

as insert into newsdel(newsid,title,contents) 

select id,title,contents from deleted

觸發器學習《一》 簡單觸發器建立

1 建立表 create table userinfo id number 10,0 primary key,name varchar2 40 2 建立序列 create sequence userinfo seq start with 1 maxvalue 9999999999 increment...

觸發器簡單小結

首先介紹觸發器的兩個最重要的基礎知識 1 觸發器分為兩種 instead of 和after 觸發器。after 觸發器,顧名思義,就是在你 sql語句 insert,delete,update 執行之後進行的操作。instead of 則是在sql 語句之前,而且並不執行 sql語句。2 sql ...

觸發器簡單介紹

觸發器 根據事件觸發機制自動觸發的一段sql語句。觸發器的主要作用 觸發器分為兩種 資料操作語言觸發器和資料定義語言觸發器 觸發型別包括 insert update delete 兩張主要的表deleted和inserted deleted表 執行delete或update操作時,被刪除的記錄會被移...