sql觸發(fā)器語法詳解 SQLServer里面的觸發(fā)器語法及其用法?
SQLServer里面的觸發(fā)器語法及其用法?觸發(fā)器的創(chuàng)建通常是為了強制不同表中邏輯相關(guān)數(shù)據(jù)之間的引用完整性或一致性。示例:--創(chuàng)建表(數(shù)據(jù)庫設(shè)計的一部分)創(chuàng)建表orderlog(editdate sm
SQLServer里面的觸發(fā)器語法及其用法?
觸發(fā)器的創(chuàng)建通常是為了強制不同表中邏輯相關(guān)數(shù)據(jù)之間的引用完整性或一致性。示例:
--創(chuàng)建表(數(shù)據(jù)庫設(shè)計的一部分)
創(chuàng)建表orderlog
(
editdate smalldatetime
]--創(chuàng)建觸發(fā)器。更新ORDERLIST表時,執(zhí)行一個操作
create trigger trOrderListLog on OrderList after update
as
insert into orderlog(editdate)values(getdate())
go
--修改OrderList表中的outdate以便執(zhí)行觸發(fā)器
update OrderList set outdate=getdate()
--查看觸發(fā)器執(zhí)行的結(jié)果select*from orderlog
基本語法格式create trigger triuuName on table for insert/update/deletedassql代碼示例:create trigger triuMC(triuMC:自定義觸發(fā)器名稱)on table(table:觸發(fā)器名稱)for insert(觸發(fā)器類型:insert,insert data trigger update,update data trigger delete,delete data trigger)asdeclare@kssj datetime(定義變量,做中間處理)declare@sqbh char(40)從Insert中選擇@kssj=kssj,@sqbh=sqbh(插入數(shù)據(jù)時,插入的數(shù)據(jù)在插入的表中,更新數(shù)據(jù)時,更新的數(shù)據(jù)在插入的表中,更新前的數(shù)據(jù)在表中被刪除。刪除數(shù)據(jù)時,刪除的數(shù)據(jù)在刪除的表中。不同的操作可以取出不同的中間數(shù)據(jù)進行處理。在本例中,插入的數(shù)據(jù)被取出)update table2 set isks=1,kksj=@kssj其中sqbh=@sqbh(根據(jù)中間處理做相應(yīng)的操作,例如,將插入的值同步更新到另一個表)