觸發器是一種特殊型別的儲存過程
乙個操作可以呼叫多個觸發器
--建立"插入"觸發器
create trigger trigger_insert on 表123 for insert as
begin
print '」插入觸發器「被呼叫'
end--呼叫「插入」觸發器
insert into 表123(姓名,年齡) values('小吳',34)
--建立"修改"觸發器
create trigger trigger_update on 表123 for update as
begin
print '「修改」觸發器被呼叫'
end--呼叫「修改「觸發器
update 表123 set 年齡=35 where 姓名='小吳'
--建立」刪除「觸發器
create trigger trigger_delete on 表123 for delete as
begin
print '」刪除「觸發器被呼叫'
end--呼叫」刪除「觸發器
delete from 表123 where 姓名='小吳'
--定義被呼叫順序
sp_settriggerorder @triggername='test2',@order='first',@stmttype='update'
--取消修改的順序
sp_settriggerorder @triggername='test2',@order='none',@stmttype='update'
--將順序定義為最後
sp_settriggerorder @triggername='test1',@order='last',@stmttype='update'
--建立替代觸發器
create trigger test_instead on 表123 instead of delete as
begin
print '替代觸發器被呼叫'
end--向乙個表中插入一條記錄的同時利用替代觸發器向另乙個表中也插入一條記錄
create trigger test_insteada on 表123 for insert as
begin
insert into 表234(姓名,年齡) values('xiaowei',23)
end--呼叫
insert into 表123(姓名,年齡) values('hehehe',39)
select *from 表123
select *from 表234
--修改觸發器
alter trigger [dbo].[trigger_instead] on [dbo].[表123] instead of insert as
begin
update 表234 set 年齡=38 where 姓名='小豆子'
update 表234 set 年齡=25 where 姓名='小崽子'
end--呼叫觸發器
insert into 表123(姓名,年齡) values ('小錢',24)
--刪除觸發器
drop trigger testtriggerc
--修改觸發器
alter trigger trigger_delete on 表123 for insert as
begin
print '修改後的觸發器被呼叫'
end--呼叫
insert into 表123(姓名,年齡) values('新人',15)
--檢視觸發器基本資訊
exec sp_help trigger_delete
--檢視建立觸發器時所用的**
exec sp_helptext trigger_delete
sqlserver觸發器複習
create table a a1 int,a2 int create table b b1 int,b2 int insert into a values 1,0 insert into b values 1,0 create trigger tri update a2 a on a for up...
SQL server 之 觸發器
今天對觸發器研究了一下,之前的學習感覺挺朦朧的,今天鼓搗了一天,算是有了一點點了解,把學習的體會記錄了下來。常見的觸發器 觸發器的作用 自動化操作,減少了手動操作以及出錯的機率 現實工作中用的比較少,因為想讓他執行起來效率高很難 一 dml觸發器 insert delete update 不支援se...
SQLSERVER的觸發器
觸發器的定義 觸發器是一種特殊型別的儲存過程,他不同於前面介紹過的一般的儲存過程 在sql內部把觸發器看做是儲存過程但是不能傳遞引數 一般的儲存過程通過儲存過程名稱被直接呼叫,而觸發器主要是通過事件進行觸發而被執行.總的來說,觸發器是一種功能強大的工具,在表中資料發生變化時自動強制執行,觸發器還可以...