我想做一个修改功能,需求如下:修改后将数据保存到另外一张表中,该表中只保存和原始表不一样的数据,请问这样的sql语句或存储过程该怎么写啊?

解决方案 »

  1.   

    --触发器示例create trigger tri_update  --创建触发器 'tri_update'(触发器名称)
           on Tab                --创建触发器的对象  (表 'Tab')
           for update           --触发的动作 (update)
    as   
    if update(ID)                --触发事务(更新ID的话触发执行)
    begin    
    raiserror('NO!',3,3)        --触发后执行
    rollback tran                --回滚
    end   
    go
      

  2.   

    如果是05以及已上版本 update output 语句 自己搜一下。
    2000 用触发器。
      

  3.   

    select * into  A fram B
    where a.x<>b.x
      

  4.   

    --触发器示例create trigger tri_update  --创建触发器 'tri_update'(触发器名称)
           on Tab                --创建触发器的对象  (表 'Tab')
           for update           --触发的动作 (update)
    as   
    if update(ID)                --触发事务(更新ID的话触发执行)
    begin    
    raiserror('NO!',3,3)        --触发后执行
    rollback tran                --回滚
    end   
    go