`
jessen163
  • 浏览: 457072 次
  • 性别: Icon_minigender_1
  • 来自: 潘多拉
社区版块
存档分类
最新评论

在Sql Server触发器中判断操作是Insert还是Update还是Delete

阅读更多
DECLARE
    @IsInsert bit,
    @IsUpdate bit,
    @IsDelete bit

IF EXISTS(SELECT 1 FROM inserted) AND NOT EXISTS(SELECT 1 FROM deleted)
    SET @IsInsert = 1
ELSE
    SET @IsInsert = 0

IF EXISTS(SELECT 1 FROM inserted) AND EXISTS(SELECT 1 FROM deleted)
    SET @IsUpdate = 1
ELSE
    SET @IsUpdate = 0

IF NOT EXISTS(SELECT 1 FROM inserted) AND EXISTS(SELECT 1 FROM deleted)
    SET @IsDelete = 1
ELSE
    SET @IsDelete = 0 
create   trigger   Update_Del   on   Table  
  for   update,delete  
  as  
  if   not   exists(select   1   from   inserted)  
  begin   /*inserted表无记录,是删除*/  
  end  
  else    
  begin   /*是更新*/   end  
  go 
分享到:
评论

相关推荐

    SQL server触发器中 update insert delete.png

    SQL server触发器中 update insert delete

    sqlserver触发器例子

    如果一个Insert﹑update或者delete语句违反了约束﹐那幺After触发器不会执行﹐因为对约束的检查是在After触发器被激动之前发生的。所以After触发器不能超越约束。 Instead of 触发器可以取代激发它的操作来执行...

    SQL server 触发器实例

    在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。触发器是一个特殊的存储过程。 常见的触发器有三种:分别应用于Insert , Update , Delete 事件。 我为什么要使用触发器?...

    sql 触发器 详解与实例

    诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Server 2005中触发器可以分为两类:DML触发器和DDL触发器,其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句...

    SQL Server数据库实验_存储过程与触发器设计.docx

    3、 在表或视图上,每个INSERT、UPDATE或DELETE语句只能创建一个INSTEAD OF类型的触发器,无法为有外键约束且指定为级联删除或级联修改的表创建DELETE或UPDATE语句上的INSTEAD OF 类型的触发器。 SQL SERVER为每个...

    sqlserver 触发器学习(实现自动编号)

    总结常用基本点如下: 1、触发器有两种... 2、DML触发器分类:Insert触发器、Delete触发器、Update触发器、上面任意类型混合。 3、触发器创建语法: 代码如下: CREATE TRIGGER <trigger> ON <table> {{{FOR|AFTER} <

    SQL SERVER 触发器介绍

    诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Server 2005中触发器可以分为两类:DML触发器和DDL触发器,其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句...

    SQL触发器实例讲解

    何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。触发器是一个特殊的存储过程。 常见的触发器有三种:分别应用于Insert,Update,Delete 事件。

    SQL Server 触发器实例详解

    Microsoft SQL Server:trade_mark: 2000 提供了两种主要机制来强制业务规则和数据完整性:约束和触发器...诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Server 2005中触发

    sqlinsert delete update触发器

    对与深刻理解触发器有很大帮助,望对朋友们有用

    DML练习:UPDATE,DELETE,INSERT操作 数据库实验报告

    DML练习:UPDATE,DELETE,INSERT操作 数据库实验报告

    Sql Server触发器的使用

    Sql Server为每个触发器都创建了两个专用表:Inserted表和Deleted表。这两个表由系统来维护,它们存在于内存中而不是数据库中。这两个表的结构总是与被该触发器作用的表的结构相同,触发器执行完成后,与该触发器...

    SQL——触发器

    唤醒调用触发器以响应 INSERT、UPDATE 或 DELETE 语句。触发器可以查询其它表,并可以包含复杂的Transact-SQL语句。将触发器和触发它的语句作为可在触发器内回滚的单个事务对待。如果检测到严重错误(例如,磁盘空间...

    深入浅析SQL Server 触发器

    诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Server 2005中触发器可以分为两类:DML触发器和DDL触发器,其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句...

    SQL Server用触发器强制执行业务规则

    唤醒调用触发 器以响应 INSERT、UPDATE 或 DELETE 语句。触发器可以查询其它表,并可以包含复杂的 Transact-SQL 语句。将触发器和触发它的语句作为可在触发器内回滚的单个事务对待。如果检测到严重错误(例如,磁盘...

    SqlServer触发器详解

    触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( ...

    ORACLE和SQL Server的语法区别

    1. 验证所有 SELECT、INSERT、UPDATE 和 DELETE 语句的语法是有效的。进行任何必要的修改。 2. 把所有外部联接改为 SQL-92 标准外部联接语法。 3. 用相应 SQL Server 函数替代 Oracle 函数。 4. 检查所有的比较...

    如何使用SQL语句创建触发器

    例如当对某一表进行诸如`UPDATE`(修改)、`INSERT`(插入)、`DELETE`(删除)这些操作时,SQL Server 就会自动执行触发器所定义的`SQL`语句,从而确保对数据之间的相互关系,实时更新. 触发器的主要作用就是其能够实现由 ...

    sql各类触发器代码

    SQL:UPDATE、DELETE、INSERT触发器

    SQL Server:触发器实例详解

    一个表或视图的每一个修改动作(Insert、Update和Delete)都可以有一个“Instead of” 触发器,一个表的每个修改动作都可以有多个“After”触发器。 2.1 “Instead of”触发器 “Instead of”触发器在执行真正“插入...

Global site tag (gtag.js) - Google Analytics