表A结构:               表B结构:
 产品名称                外箱条码
 待发客户                产品名称  (和表A相同)
 待发数                   客户名称  (与表A待发客户相同)
 已发数                   需发数    (表A的待发数)
 发货状态               第几箱触发器功能:
表B有数据插入时,取出插入数据的第几箱和需发数
判断第几箱是否和需发数相等
相等即更新表A的已发数和发货状态
不相等只更新表A的已发数非常非常非常感谢、、、、

解决方案 »

  1.   

    create trigger Tri_TEST
    on B after insert
    as 
    begin
    if exists(select 1 from inserted where 第几箱=需发数)
    update A set 已发数=b.需发数,发货状态='已发' 
    from A inner join inserted as b on a.产品名称=b.产品名称 and a.待发客户=b.客户名称
    else
    update A set 已发数=b.需发数
    from A inner join inserted as b on a.产品名称=b.产品名称 and a.待发客户=b.客户名称
    end