對紀(jì)檢監(jiān)察工作的意見和建議(意見和建議有什么區(qū)別) Matlab2015b軟件安裝教程(matlab2014b安裝教程) 如何申請Apple ID(ipad如何申請apple ID) 南陽中招分?jǐn)?shù)線2020(南陽中招分?jǐn)?shù)線) photoshop CS4教程(photoshop cs4教程下載) 怎么用手機(jī)下載電子書(怎么用手機(jī)下載電子書到mp4) 書法毛氈是什么(毛氈在書法中的用途是什么) 手機(jī)QQ 密碼輸入框 不能復(fù)制粘貼解決辦法(qq密碼復(fù)制粘貼不了怎么回事) 微信拍一拍在哪里(微信拍一拍在哪里發(fā)送) 三鼠是什么意思(三叫鼠是什么) 粉紅女郎馬卡龍的做法(馬卡龍粉紅色背景圖片) 王者榮耀雅典娜技能被動介紹(王者榮耀雅典娜的被動) 一年級下冊語文期末考試試卷2023(一年級下冊語文) Realtek聲卡沒聲音的解決辦法(聲卡沒有realtek) lols7寡婦制造者伊芙琳打野雙修爆炸出裝 晏子使楚翻譯和原文(晏子使楚翻譯) 股指期貨入門:期指貼水是什么意思(股指期貨入門:期指貼水是什么意思呀) 自我反思怎么寫學(xué)生(自我反思怎么寫) 怎么在百度發(fā)布信息 百度怎么發(fā)動態(tài)(百度怎樣發(fā)布消息) 加勒比海盜小提琴曲(雙城變奏中的小提琴曲) 排球的場地如何安排及尺寸大小(排球比賽場地尺寸大小) 手機(jī)殼貼鉆還能這樣DIY 你不知道吧(怎樣貼手機(jī)殼的鉆才能更牢固) 余弦函數(shù)公式大全表格(余弦函數(shù)公式) 如何解決使用打印機(jī)突然提示“尚未安裝打印機(jī)”(尚未安裝打印機(jī)怎么回事) 夢幻西游三維版怎么聯(lián)系在線客服(夢幻西游三維版客服電話人工服務(wù)電話) 銷售原材料結(jié)轉(zhuǎn)成本的會計分錄(銷售原材料會計分錄) 手機(jī)如何查詢東莞住房公積金?(手機(jī)如何查詢東莞住房公積金貸款額度) 呆萌寵物對對碰攻略(萌寵對決攻略) 工程招標(biāo)代理資質(zhì)取消通知(工程招標(biāo)代理資質(zhì)) 法定節(jié)假日加班工資怎么算(法定節(jié)假加班工資怎么計算) 駕照理論考試技巧和方法(駕照理論考試技巧和方法口訣) 黃花菜不能和什么食物同吃(黃花菜不能和什么食物一起吃) HTC G12刷recovery教程及進(jìn)入recovery方法(htc如何進(jìn)入recovery) b血型的人有什么特點(diǎn)男(b血型的人有什么特點(diǎn)) Sai軟件手繪簡筆畫綠色環(huán)保機(jī)器人(SAI畫畫軟件) Their是什么意思中文翻譯怎么讀(their是什么意思) 網(wǎng)上賺錢創(chuàng)業(yè)方法大全(網(wǎng)上賺錢創(chuàng)業(yè)方法大全套) 走路賺錢的幾種方式(走路賺錢的幾種方式是什么) 紅龍魚飼養(yǎng)方法(紅龍草) 怎樣增強(qiáng)抵抗力(怎樣增強(qiáng)抵抗力和免疫力) qb怎么轉(zhuǎn)給別人(怎么把qb給別人) 不是花中偏愛菊此花開盡更無花全詩拼音(不是花中偏愛菊此花開盡更無花全詩) 微信新功能"拍一拍"上線!(微信新功能朋友圈折疊) 現(xiàn)場儀表HART通訊如何接線(hart怎么接線) peacewarfound的英語怎么讀(peace war find怎么讀) q版泡泡堂6怎么換人(q版泡泡堂可以三人嗎) 如何獲得更多渠道商及他們的支持(如何獲得更多渠道商及他們的支持英語) 作文那一次我失敗了(作文那一次我真高興) 圍巾情人扣的織法(圍巾情人扣的織法粗線) 懸崖上的金魚公主國語版櫻花動漫(懸崖上的金魚公主國語版高清)
您的位置:首頁 >綜合精選 >

sql觸發(fā)器語句(sql觸發(fā)器的使用及語法)

導(dǎo)讀 關(guān)于sql觸發(fā)器語句,sql觸發(fā)器的使用及語法這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!1、CREAT

關(guān)于sql觸發(fā)器語句,sql觸發(fā)器的使用及語法這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!

1、CREATE TRIGGER 創(chuàng)建觸發(fā)器,觸發(fā)器是一種特殊的存儲過程,在用戶試圖對指定的表執(zhí)行指定的數(shù)據(jù)修改語句時自動執(zhí)行。

2、Microsoft? SQL Server? 允許為任何給定的 INSERT、UPDATE 或 DELETE 語句創(chuàng)建多個觸發(fā)器。

3、 語法 CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ WITH APPEND ] [ NOT FOR REPLICATION ] AS [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } } 參數(shù) trigger_name 是觸發(fā)器的名稱。

4、觸發(fā)器名稱必須符合標(biāo)識符規(guī)則,并且在數(shù)據(jù)庫中必須唯一。

5、可以選擇是否指定觸發(fā)器所有者名稱。

6、 Table | view 是在其上執(zhí)行觸發(fā)器的表或視圖,有時稱為觸發(fā)器表或觸發(fā)器視圖。

7、可以選擇是否指定表或視圖的所有者名稱。

8、 WITH ENCRYPTION 加密 syscomments 表中包含 CREATE TRIGGER 語句文本的條目。

9、使用 WITH ENCRYPTION 可防止將觸發(fā)器作為 SQL Server 復(fù)制的一部分發(fā)布。

10、 AFTER 指定觸發(fā)器只有在觸發(fā) SQL 語句中指定的所有操作都已成功執(zhí)行后才激發(fā)。

11、所有的引用級聯(lián)操作和約束檢查也必須成功完成后,才能執(zhí)行此觸發(fā)器。

12、 如果僅指定 FOR 關(guān)鍵字,則 AFTER 是默認(rèn)設(shè)置。

13、 不能在視圖上定義 AFTER 觸發(fā)器。

14、 INSTEAD OF 指定執(zhí)行觸發(fā)器而不是執(zhí)行觸發(fā) SQL 語句,從而替代觸發(fā)語句的操作。

15、 在表或視圖上,每個 INSERT、UPDATE 或 DELETE 語句最多可以定義一個 INSTEAD OF 觸發(fā)器。

16、然而,可以在每個具有 INSTEAD OF 觸發(fā)器的視圖上定義視圖。

17、 INSTEAD OF 觸發(fā)器不能在 WITH CHECK OPTION 的可更新視圖上定義。

18、如果向指定了 WITH CHECK OPTION 選項的可更新視圖添加 INSTEAD OF 觸發(fā)器,SQL Server 將產(chǎn)生一個錯誤。

19、用戶必須用 ALTER VIEW 刪除該選項后才能定義 INSTEAD OF 觸發(fā)器。

20、 { [DELETE] [,] [INSERT] [,] [UPDATE] } 是指定在表或視圖上執(zhí)行哪些數(shù)據(jù)修改語句時將激活觸發(fā)器的關(guān)鍵字。

21、必須至少指定一個選項。

22、在觸發(fā)器定義中允許使用以任意順序組合的這些關(guān)鍵字。

23、如果指定的選項多于一個,需用逗號分隔這些選項。

24、 對于 INSTEAD OF 觸發(fā)器,不允許在具有 ON DELETE 級聯(lián)操作引用關(guān)系的表上使用 DELETE 選項。

25、同樣,也不允許在具有 ON UPDATE 級聯(lián)操作引用關(guān)系的表上使用 UPDATE 選項。

26、 WITH APPEND 指定應(yīng)該添加現(xiàn)有類型的其它觸發(fā)器。

27、只有當(dāng)兼容級別是 65 或更低時,才需要使用該可選子句。

28、如果兼容級別是 70 或更高,則不必使用 WITH APPEND 子句添加現(xiàn)有類型的其它觸發(fā)器(這是兼容級別設(shè)置為 70 或更高的 CREATE TRIGGER 的默認(rèn)行為)。

29、有關(guān)更多信息,請參見 sp_dbcmptlevel。

30、 WITH APPEND 不能與 INSTEAD OF 觸發(fā)器一起使用,或者,如果顯式聲明 AFTER 觸發(fā)器,也不能使用該子句。

31、只有當(dāng)出于向后兼容而指定 FOR 時(沒有 INSTEAD OF 或 AFTER),才能使用 WITH APPEND。

32、以后的版本將不支持 WITH APPEND 和 FOR(將被解釋為 AFTER)。

33、 NOT FOR REPLICATION 表示當(dāng)復(fù)制進(jìn)程更改觸發(fā)器所涉及的表時,不應(yīng)執(zhí)行該觸發(fā)器。

34、 AS 是觸發(fā)器要執(zhí)行的操作。

35、 sql_statement 是觸發(fā)器的條件和操作。

36、觸發(fā)器條件指定其它準(zhǔn)則,以確定 DELETE、INSERT 或 UPDATE 語句是否導(dǎo)致執(zhí)行觸發(fā)器操作。

37、 當(dāng)嘗試 DELETE、INSERT 或 UPDATE 操作時,Transact-SQL語句中指定的觸發(fā)器操作將生效。

38、 觸發(fā)器可以包含任意數(shù)量和種類的 Transact-SQL 語句。

39、觸發(fā)器旨在根據(jù)數(shù)據(jù)修改語句檢查或更改數(shù)據(jù);它不應(yīng)將數(shù)據(jù)返回給用戶。

40、觸發(fā)器中的 Transact-SQL 語句常常包含控制流語言。

41、CREATE TRIGGER 語句中使用幾個特殊的表: deleted 和 inserted 是邏輯(概念)表。

42、這些表在結(jié)構(gòu)上類似于定義觸發(fā)器的表(也就是在其中嘗試用戶操作的表);這些表用于保存用戶操作可能更改的行的舊值或新值。

43、例如,若要檢索 deleted 表中的所有值,請使用: SELECT * FROM deleted 如果兼容級別等于 70,那么在 DELETE、INSERT 或 UPDATE 觸發(fā)器中,SQL Server 將不允許引用 inserted 和 deleted 表中的 text、ntext 或 image 列。

44、不能訪問 inserted 和 deleted 表中的 text、ntext 和 image 值。

45、若要在 INSERT 或 UPDATE 觸發(fā)器中檢索新值,請將 inserted 表與原始更新表聯(lián)接。

46、當(dāng)兼容級別是 65 或更低時,對 inserted 或 deleted 表中允許空值的text、ntext 或 image 列,將返回空值;如果這些列不可為空,則返回零長度字符串。

47、 當(dāng)兼容級別是 80 或更高時,SQL Server 允許在表或視圖上通過 INSTEAD OF 觸發(fā)器更新 text、ntext 或 image 列。

48、 n 是表示觸發(fā)器中可以包含多條 Transact-SQL 語句的占位符。

49、對于 IF UPDATE (column) 語句,可以通過重復(fù) UPDATE (column) 子句包含多列。

50、 IF UPDATE (column) 測試在指定的列上進(jìn)行的 INSERT 或 UPDATE 操作,不能用于 DELETE 操作。

51、可以指定多列。

52、因為在 ON 子句中指定了表名,所以在 IF UPDATE 子句中的列名前不要包含表名。

53、若要測試在多個列上進(jìn)行的 INSERT 或 UPDATE 操作,請在第一個操作后指定單獨(dú)的 UPDATE(column) 子句。

54、在 INSERT 操作中 IF UPDATE 將返回 TRUE 值,因為這些列插入了顯式值或隱性 (NULL) 值。

55、 說明 IF UPDATE (column) 子句的功能等同于 IF、IF...ELSE 或 WHILE 語句,并且可以使用 BEGIN...END 語句塊。

56、有關(guān)更多信息,請參見控制流語言。

57、 可以在觸發(fā)器主體中的任意位置使用 UPDATE (column)。

58、 column 是要測試 INSERT 或 UPDATE 操作的列名。

59、該列可以是 SQL Server 支持的任何數(shù)據(jù)類型。

60、但是,計算列不能用于該環(huán)境中。

61、有關(guān)更多信息,請參見數(shù)據(jù)類型。

本文分享完畢,希望對大家有所幫助。

標(biāo)簽:

免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!

最新文章