如果很难 最后面那个条件就不要了 ,全部拿过来吧 我把我写的代码贴给你们看看,帮我纠正下。
create trigger
 BMS_STUFF_trigger
on BMS_STUFF
after insertas 
begin
insert into BMS_STUFF_history
getdate(),user_name(),'insert',select * from deleted
end

解决方案 »

  1.   

    create trigger
    a_tr
    on a
    after insert
    as 
      begin
       insert into b
       'insert' ,select * from deleted
    end
    上面那个弄错了 ,是我写的别的表的触发器,这个是对应于题目意思的,高手帮帮忙。
      

  2.   

    用三个触发器最简单create trigger trig_insert 
    on a 
    after insert 
    as 
    begin 
    insert into b(type,iname,birthday) select 'insert',iname,birthday from inserted 
    endcreate trigger trig_update 
    on a 
    after update 
    as 
    begin 
    insert into b(type,iname,birthday) select 'update',iname,birthday from deleted 
    end
    create trigger trig_delete
    on a 
    after delete 
    as 
    begin 
    insert into b(type,iname,birthday) select 'delete',iname,birthday from deleted 
    end
      

  3.   


    create trigger 
    a_tr 
    on a 
    after insert 
    as 
      begin 
      insert into b 
      select 'insert', * from deleted 
    end 
      

  4.   


    把 'insert','update','delete' 寫在select 語句中.
      

  5.   

    create trigger 
    a_tr_insert
    on a 
    after insert 
    as 
      begin 
      insert into b 
      select 'insert' ,* from inserted 
    end gocreate trigger 
    a_tr_delete
    on a 
    after delete
    as 
      begin 
      insert into b 
      select 'delete' ,* from deleted 
    end 
    gocreate trigger 
    a_tr_update
    on a 
    after update
    as 
      begin 
      insert into b 
      select 'update before' ,* from deleted 
      union all
      select 'update after' ,* from inserted
    end 
    go
      

  6.   

    也可以写成一个触发器
    create trigger 
    a_tr
    on a 
    after update,insert,delete
    as 
      begin 
      declare @op varchar(30)
      if not exists (select 1 from deleted)
         set @op = 'insert'
      else if not exists (select 1 from inserted)
         set @op = 'delete'
      else
         set @op = 'update'
      insert into b 
      select case when @op = 'update' then 'update before' else @op end ,* from deleted 
      union all
      select case when @op = 'update' then 'update after' else @op end ,* from inserted
    end 
    go