6.SQL Server DML触发器--INSTEAD OF触发器

本文介绍了SQL Server中的INSTEAD OF触发器,它在处理约束前触发,可用于替代INSERT、UPDATE和DELETE语句。特别是对于不能直接更新的视图,INSTEAD OF触发器能支持更新操作。通过示例展示了如何创建一个用于防止主键约束冲突的INSERT触发器,当插入的记录已存在时,更新相应记录的地址信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文摘自《锋利的SQL》:http://item.jd.com/10380652.html


在前面讨论的一直都是AFTER触发器。INSTEAD OF在处理约束前激发,可以在INSTEAD OF中使用其他语句来替代激发触发器的INSERTUPDATE等语句。


可以为表或视图定义INSTEADOF触发器,但是,INSTEADOF触发器的主要优点是可以使不能更新的视图支持更新。基于多个基表的视图必须使用INSTEAD OF触发器来对多个表中的数据进行插入、更新和删除操作。INSTEAD OF触发器的另一个优点是允许在批处理中某些部分成功的同时,能够拒绝批处理中的其他部分。


1.为表创建INSTEAD OF触发器


AFTER触发器相同,INSTEAD OF触发器也需要指定其适用的操作类型,包括INSERTUPDATEDELETE操作。要创建一个<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值