• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    SqlServer实现类似Oracle的before触发器示例

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

    SET ANSI_NULLS ON 
    GO 
    SET QUOTED_IDENTIFIER ON 
    GO 
    -- ============================================= 
    -- Author: Author,,Name> 
    -- Create date: Create Date,,> 
    -- Description: 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: Author,,Name> 
    -- Create date: Create Date,,> 
    -- Description: 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
    您可能感兴趣的文章:
    • 关于喜忧参半的SQL Server触发器详解
    • 利用SQL Server触发器实现表的历史修改痕迹记录
    • SQLSERVER对加密的存储过程、视图、触发器进行解密(推荐)
    • SQL Server 使用触发器(trigger)发送电子邮件步骤详解
    • SQL Server实现用触发器捕获DML操作的会话信息【实例】
    • SQL Server:触发器实例详解
    • SqlServer触发器详解
    • SQL SERVER中各类触发器的完整语法及参数说明
    • SQL SERVER 触发器介绍
    • SQL Server误区30日谈 第4天 DDL触发器就是INSTEAD OF触发器
    • SQL Server 触发器详情
    上一篇:在Windows XP系统安装SQL server 2000 企业版(图解版)
    下一篇:Sql Server使用cursor处理重复数据过程详解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    SqlServer实现类似Oracle的before触发器示例 SqlServer,实现,类似,Oracle,