SqlServer怎么实现类似Oracle的before触发器-创新互联

本篇内容主要讲解“SqlServer怎么实现类似Oracle的before触发器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SqlServer怎么实现类似Oracle的before触发器”吧!

成都创新互联公司是一家专注于网站设计、成都网站制作与策划设计,隆安网站建设哪家好?成都创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:隆安等地区。隆安做网站价格咨询:18980820575

1. 插入数据前判断数据是否存在

SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author:  -- Create date:  -- Description:  -- ============================================= alter TRIGGER CategoryExistTrigger ON ProductCategory instead of insert AS declare @categoryName varchar(50); BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Insert statements for trigger here select @categoryName = CategoryName from inserted; if exists(select * from ProductCategory where CategoryName =@categoryName) begin print 'Category exists..' end; else begin insert into ProductCategory select * from inserted; end; END

2. 删除表中数据时需要先删除外键表的数据

SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author:  -- Create date:  -- Description:  -- ============================================= alter TRIGGER DeleteOrderTrigger ON OrderHeader instead of delete AS declare @OrderId varchar(50); BEGIN SET NOCOUNT ON; select @OrderId = OrderId from deleted; delete from OrderLine where OrderId = @OrderId; END GO

到此,相信大家对“SqlServer怎么实现类似Oracle的before触发器”有了更深的了解,不妨来实际操作一番吧!这里是创新互联建站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


文章标题:SqlServer怎么实现类似Oracle的before触发器-创新互联
浏览地址:http://bzwzjz.com/article/jghdc.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 企业网站设计 网站制作公司 高端网站建设 专业网站设计 手机网站制作设计 响应式网站设计方案 温江网站设计 专业网站建设 成都网站设计 网站建设公司 成都网站制作 移动手机网站制作 高端网站设计推广 成都网站建设 成都网站建设 网站建设 四川成都网站设计 自适应网站建设 网站建设方案 温江网站设计 网站建设方案 成都响应式网站建设公司