當前位置:首頁 » 編程語言 » sql觸發器insteadof

sql觸發器insteadof

發布時間: 2024-11-05 17:48:04

⑴ instead of instead觸發器是 什麼觸發器啊

INSTEAD OF 觸發器是sql Server 2000 的新添加的功能,AFTER 觸發器等同於以前版本中的觸發器。當為表或視圖定義了針對某一操作(INSERT、 DELETE、 UPDATE) 的INSTEAD OF 類型觸發器且執行了相應的操作時,盡管觸發器被觸發,但相應的操作並不被執行,而運行的僅是觸發器SQL 語句本身。

INSTEAD OF 觸發器的主要優點是使不可被修改的視圖能夠支持修改。其中典型的例子是分割視圖(partitioned view)。為了提高查詢性能,分割視圖通常是一個來自多個表的結果集,但是也正因此而不支持視圖更新。下面的例子說明了如何使用INSTEAD OF觸發器來支持對分割視圖所引用的基本表的修改。

⑵ sql中觸發器instead of 和after的區別是什麼

after觸發器是在操作成功後,所採取的一些動作,而對於instead of觸發器,對資料庫的操作只是
一個「導火線」而已,真正起作用的是觸發器裡面的動作;往往這種觸發器會有很多分支判斷語句在裡面,根據不用的條件做不同的動作觸發器能處理更復雜的約束--簡單的可用級聯及簡單約束來實現。
看看這個就差不多明白了:http://bbs.csdn.net/topics/300074591

⑶ sql語句的觸發器問題,instead of、after、for事件的區別,還有execute as字句的使用。謝謝

after等價於for,是事後觸發。instead of則會取代原來的操作,例如在你的例子里,將不再執行插入操作,而是執行觸發器里的操作。

execute as是用來定義模塊的執行上下文
EXECUTE AS { CALLER | SELF | OWNER | 'user_name' }
其中CALLER指模塊調用方,SELF指創建或更改模塊的用戶,OWNER指模塊的當前所有者, 『user_name』 則是指定的用戶。

熱點內容
燕山大學編譯原理期末考試題 發布:2024-11-05 20:13:54 瀏覽:523
華為電腦出現臨時伺服器 發布:2024-11-05 20:05:08 瀏覽:405
斗戰神免費挖礦腳本 發布:2024-11-05 19:53:25 瀏覽:662
網吧伺服器分別是什麼 發布:2024-11-05 19:45:32 瀏覽:389
忍3無傷腳本 發布:2024-11-05 19:11:40 瀏覽:302
江蘇雲伺服器散熱器定製 發布:2024-11-05 18:50:15 瀏覽:719
投資分紅網站源碼 發布:2024-11-05 18:36:38 瀏覽:505
我的世界推薦適合萌新的伺服器 發布:2024-11-05 18:30:03 瀏覽:580
c語言考級 發布:2024-11-05 18:16:54 瀏覽:505
易語言不能編譯安卓app嗎 發布:2024-11-05 18:14:11 瀏覽:838