天天看点

SQL Server中类似Oracle中before触发器

有这样的应用情形,除了使用2表之间主外键约束中启用级联修改和级联删除这种SQL Server自带的解决方案外,我们还可以使用触发器来完成类似的功能,以下通过一个删除来举例说明:

假如一个SysFuncDic(功能字典表)、SysFuncRights(功能权限表),功能权限表中的FuncID和功能字典表中FuncID有外键约束关系,现在我们要删除SysFuncDic中的记录,因为做过外键约束关系,所以无法删除。解决的办法是首先删除SysFuncRights表中所有与FuncID对应的记录即可。