如何让触发器级联修改字段值?

做了一个无限层级结构。
如何修改其父部门,让触发器级联修改所有子部门。
例如:修改了‘福建省’的IsForbid字段,让触发器级联更新‘福建省’下的所有市县的IsForbid字段,
让‘子’与‘父’的IsForbid值相同。
我写了一个触发器,但是他只会触发一次。例如,我修改了‘福建省’的IsForbid值,触发器只会更新‘市’一级的节点,
而‘市’一级下面的‘区’、‘县’却无法触发。
CREATE TRIGGER tr_DeptBase ON DeptBase
FOR UPDATE
AS
BEGIN
DECLARE @DeptID INT ;
DECLARE @IsForbid BIT ;
SELECT @DeptID = DeptID ,
@IsForbid = IsForbid
FROM INSERTED ;
UPDATE DeptBase
SET IsForbid = @IsForbid
WHERE BaseDeptID = @DeptID ;
END
这种需求要如何实现?
...全文
相关推荐
SQL Server 触发器 表的特定字段更新时,触发Update触发器
代码如下: create trigger TR_MasterTable_Update on MasterTable after update as if update ([Type])–当Type字段被更新时,才会触发此触发器 insert into MasterLogTable select Id ,(Case [Type] when 1 then ‘Type1’ when 2 then ‘Type2’ when 3 then ‘Type3’ when 4 then ‘Type4’ else ‘TypeDefault’ end) ,Name from inserted go 另外再补充一句
【SQL server】DML触发器监控数据库字段值改变
如何实现动态数据库表的字段改变的监控
修改当前行字段的触发器
当某表某行数据修改时,自动修改当前行某字段的触发器
连接两个属性表,修改源属性表中某字段的值,目标属性表对应字段的值自动修改
用合适的字段信息让两个属性表产生关联,实现修改一个属性表中某字段的值,另一个属性表中对应字段的值自动修改,类似于数据库的触发器技术。
使用SQL Server触发器实现数据表的级联更新.pdf
使用SQL Server触发器实现数据表的级联更新.pdf


