亲爱的同仁:
   我想写一个触发器,当发现某个字段被修改时,我想不让它修改,还原为原来的数据。   不要说在设计表时实现之类的,因为我主要是想防止有时被误操作等,请给出在触发器里实现的方法。   先谢谢了!

解决方案 »

  1.   

    create trigger my_trig on tb for update
    as
    begin
      update tb set col1 = d.col1,col2 = d.col2 ... from tb , deleted d where tb.主键 = d.主键
    end
      

  2.   

    create trigger tri_name on  tb
    for update
    as
    if update(col)
       rollback
      

  3.   

    create trigger tri_name on  tb
    for update
    as
    begin
    if update(col,col1)
       rollback
    end
      

  4.   

    用  INSTEAD OF 触发器,参考:
    http://blog.csdn.net/qianjin036a/article/details/6136588
      

  5.   


    这个会不会对之前的DML语句也造成影响呢update t1 ....update tb ....导致对t1的修改也被回滚?