国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

關系數據庫SQL之可編程性觸發器

LiangJ / 1932人閱讀

摘要:前言前面關系數據庫之可編程性函數用戶自定義函數一文提到關系型數據庫提供了可編程性的函數存儲過程事務觸發器及游標,前文已介紹了函數存儲過程事務,本文來介紹一下觸發器的使用。觸發器是在執行之后觸發,而觸發器是在執行之前觸發。

前言

前面關系數據庫SQL之可編程性函數(用戶自定義函數)一文提到關系型數據庫提供了可編程性的函數、存儲過程、事務、觸發器及游標,前文已介紹了函數、存儲過程、事務,本文來介紹一下觸發器的使用。(還是以前面的銀行系統為例)

概述

觸發器(TRIGGER)是個特殊的存儲過程,它的執行不是由程序調用,也不是手工啟動,而是由事件來觸發,比如當對一個表進行操作( INSERT,DELETE, UPDATE)時就會激活它執行。觸發器經常用于加強數據的完整性約束和業務規則等。 觸發器可以從 DBA_TRIGGERS ,USER_TRIGGERS?數據字典中查到。

觸發器分為兩種:AFTER觸發器和INSTEAD OF觸發器。

語法

創建觸發器

CREATE TRIGGER <觸發器名稱> 
   ON  <表名|視圖名> 
   [AFTER | INSTEAD OF] 
AS 
--SQL語句塊

修改觸發器

ALERT TRIGGER <觸發器名稱> 
   ON  <表名|視圖名> 
   [AFTER | INSTEAD OF] 
AS 
--SQL語句塊

刪除觸發器

DROP TRIGGER <觸發器名稱>

說明:

AFTER觸發器主要用于在數據表執行INSERT,DELETE, UPDATE操作之后,同時操作其他表。

INSTEAD OF觸發器會替代所要執行的SQL語句,也就是說所要執行SQL并不會真正執行,真正執行的是觸發器中定義的操作。

AFTER觸發器只針對表操作,INSTEAD OF觸發器除了操作表還可以作用于視圖,擴展視圖可以支持的更新操作。

AFTER觸發器是在執行SQL之后觸發,而INSTEAD OF觸發器是在執行SQL之前觸發。

一個表的INSERT,DELETE, UPDATE操作可以有多個AFTER觸發器,有至多一個INSTEAD OF觸發器

特殊表

觸發器有兩個特殊的表:插入表(instered表)和刪除表(deleted表)

示例

1.AFTER觸發器示例
在取錢時,交易信息表里面插入交易信息,同時要更改賬戶表里面的余額

--創建觸發器
CREATE TRIGGER Trigger_getMoney 
   ON  TransInfo 
   AFTER INSERT
AS 
declare @cardId varchar(19)
declare @tranMoney money
select @cardId  = CardID , @tranMoney = TransMoney from instered;
update CardInfo set LeftMoney = LeftMoney - @tranMoney where CardID = @cardId
GO

--執行插入操作
insert into TransInfo values("1324 3626 7532 1935","取款",500,default);

2.INSTEAD OF觸發器
指定的賬戶"422322001550135015"不可以刪除

--創建觸發器
CREATE TRIGGER Trigger_deleteAccount 
   ON  AccountInfo 
   INSTEAD OF DELETE
AS 
delete from AccountInfo where CardID != "422322001550135015" AND CardID=(select?CardID from?deleted)
--執行刪除操作

本文就介紹到這里。
如有疑問請聯系我。

原文來自:簡書

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/17537.html

相關文章

  • 關系據庫SQL編程事務

    摘要:前言前面關系數據庫之可編程性函數用戶自定義函數一文提到關系型數據庫提供了可編程性的函數存儲過程事務觸發器及游標,前文已介紹了函數存儲過程,本文來介紹一下事務的使用。在相關數據庫中,所有規則都必須應用于事務的修改,以保持所有數據的完整性。 前言 前面關系數據庫SQL之可編程性函數(用戶自定義函數)一文提到關系型數據庫提供了可編程性的函數、存儲過程、事務、觸發器及游標,前文已介紹了函數、存...

    skinner 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<