A表数据有
订单号、商品名称
B表数据有
订单号、运费
我想在B表里创建一个触发器实现
如果A表的订单号=B表的订单号
那么就将满足上面条件的订单号、商品名称、运费全部插入进C表
请问该操作的触发器该如何写

解决方案 »

  1.   

    create trigger tri_b on b for insert,update,delete
    as
    delete c from b,c where b.订单号=c.订单号
    insert into c select a.*,b.运费 from a,b
    where a.订单号=b.订单号
      

  2.   

    create trigger tr_b on b 
    for insert,update
    as
    begin 
    insert c 
    select a.订单号,商品名称,运费
    from inserted i join a on i.订单号=a.订单号
    end
      

  3.   

    create trigger tr_Info on b 
    for insert
    as
    begin
     if(select * from A where 订单号 exists(select 订单号 from inserted)>0)
     begin
      insert into C(订单号,商品名称,运费) select i.订单号,i.商品名称,i.运费 from inserted i
     end 
    end
      

  4.   

    create trigger tr_Info on b 
    for insert
    as
    begin
     if(select * from A where 订单号 exists(select 订单号 from inserted)>0)
     begin
      insert into C(订单号,商品名称,运费) select i.订单号,i.商品名称,i.运费 from inserted i
     end 
    end
      

  5.   

    create trigger tri_b on b 
    for insert,update,delete
    as
    delete
     c 
    from
     b,c 
    where
     b.订单号=c.订单号
    insert into
     c 
    select
     a.*,b.运费 
    from
     a,b 
    where a.订单号=b.订单号
      

  6.   

    create trigger my_trig on b for insert,update,delete
    as
    if not exists(select 1 from inserted)
       delete c from deleted t where c.订单号 = t.订单号
    else if not exists(select 1 from deleted) 
       insert into c(订单号,商品名称,运费) select t.订单号 , a.商品名称 , t.运费 from inserted t , a where t.订单号 = a.订单号
    else
       update c set 运费 = 运费 + t.运费 from inserted t where c.订单号 = t.订单号
    go
      

  7.   


    create trigger tr_Info on b for insert
    as
    begin
     if(select * from A where 订单号 exists(select 订单号 from inserted)>0)
      insert into C(订单号,商品名称,运费) select i.订单号,i.商品名称,i.运费 from inserted i
    end
      

  8.   

    create trigger tr_Info on b 
    for insert
    as
    begin
     if(select * from A where 订单号 exists(select 订单号 from inserted)>0)
     begin
      insert into C(订单号,商品名称,运费) select i.订单号,i.商品名称,i.运费 from inserted i
     end 
    end
      

  9.   

    select a.*,b --把这个换成具体的列名,而且一定要和 插入的c表保持一致
    --最好c表字段也列出来一一对应
    insert into c(**,**,**,**,**...) select a.*,b.运费 from a,b
    where a.订单号=b.订单号