首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 遞迴觸發器與游標結合實戰:直接/間接遞迴控制機制與巢狀層級限制深度解析

     編輯:關於SqlServer

觸發器應用中常遇觸發器嘗試更新關聯原始目標表,導致無限循環觸發。不同 DBMS 提供不同解決方案:限制觸發器執行動作、提供內嵌功能檢測巢狀層級、系統設定控制是否允許串聯觸發、限制巢狀觸發器層級數目。MS SQL Server 中此類觸發器稱遞迴觸發器,透過限制巢狀觸發器層級數目與控制是否允許觸發巢狀觸發器雙重機制管控。

遞迴觸發器啟用條件與兩大類型

除非資料庫選項啟用遞迴觸發器,否則觸發器不會被遞迴觸發:

  • 直接遞迴:觸發器執行動作再次引發同一觸發器。例:更新操作觸發表上觸發器,觸發器又執行更新,再次觸發自身
  • 間接遞迴:觸發器執行動作引發另一表觸發器,第二個觸發器再觸發第一個觸發器

觸發器與游標結合增強功能範例

下例結合游標與遞迴觸發器,展示綜合應用:

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved