SQLServer2008如何撤销先前一条Update操作,这条update的语句中如下:
update 表名 set 字段=XX,没有用到事务,因为数据发现更新错误,所以要撤销操作。
注释:已经不知道更新之前的操作。分数不是问题

解决方案 »

  1.   

    对,查看日志文件,看能否rollback
      

  2.   

    反向语句能写当然最好,update语句很多没有反向语句的用日志查看的软件吧,好像Log Explorer可以,不知道是否支持SQL2008
      

  3.   

    有备份不,有备份用备份还原.还原前,先把事务日志备份出来.再用备份,加事务日志备份还原到指定的时间点(更新数据前)
    Log Explorer是不运动SQL2008的
      

  4.   

    前提是楼主的数据库是完整恢复模式(Full Recovery)且未做截断.
    用Log Explorer打开数据库日志文件(.LDF),找到刚才的Update部分,产生反向的SQL脚本..
      

  5.   

    有备份的话就直接还原如果有日志备份 就可以通过日志来还原如果都没有 帮哭 因为2008用不了log explore
      

  6.   

    同样帮哭
    自从上次被经理狠K之后
    在update语句执行之前
    都会运行一个Select * into tb_bak from tb这样的语句
    然后再Update的时候就不慌了
      

  7.   

    http://topic.csdn.net/u/20110519/17/96b0a8b2-c46b-4ac1-8570-99a23e0b8b15.html
      

  8.   

    select * into .. 遇到大表咋办?
    建议用 
    begin tran
      update ...  --更新
      select ...  --确认commit tran --提交

    rollback tran --回滚
      

  9.   

    还好,找了很久,发现了前几天有个备份文件,不然大家帮哭都不行了!如果真是那样就死翘翘了!感谢大家的回复!=============警告=========
    以后大家写sql语句时一定记得数据的可恢复性!!
      

  10.   

    做个定时备份的作业,每天夜里备份一次,这种问题就不需要上CSDN了.