只能通过判断inserted、deleted表中有没有记录来判断。
只有inserted有记录,是insert操作
只有deleted有记录,是delete操作
inseted、deleted都有记录是update操作。

解决方案 »

  1.   

    只能提供一个不太好的办法,
    在你的trigger中做如下的判断.declare @I int,@status varchar(20)
    set @I = 0
    if exists(select 1 from deleted)
    set @I = @I + 1
    if exists(select 1 from inserted)
    set @I = @I + 2if @I = 1
    set @status = ‘deleting’
    else if @I = 2
    set @status = ‘inserting’
    else
    set @status = ‘updating’
      

  2.   

    只能提供一个不太好的办法,
    在你的trigger中做如下的判断.declare @I int,@status varchar(20)
    set @I = 0
    if exists(select 1 from deleted)
    set @I = @I + 1
    if exists(select 1 from inserted)
    set @I = @I + 2if @I = 1
    set @status = ‘deleting’
    else if @I = 2
    set @status = ‘inserting’
    else
    set @status = ‘updating’
      

  3.   

    只能提供一个不太好的办法,
    在你的trigger中做如下的判断.declare @I int,@status varchar(20)
    set @I = 0
    if exists(select 1 from deleted)
    set @I = @I + 1
    if exists(select 1 from inserted)
    set @I = @I + 2if @I = 1
    set @status = ‘deleting’
    else if @I = 2
    set @status = ‘inserting’
    else
    set @status = ‘updating’