日期:2014-05-17  浏览次数:20620 次

恢复数据问题
在没有备份的条件下 ,能在update 了之后返回上一步吗?
很是心疼呢,有什么办法

------解决方案--------------------
用第三方的工具可以导出UNDO的脚本重新执行就返回去了。 
------解决方案--------------------
好像是不行啊
------解决方案--------------------
引用:
引用:
俩字,不行
你不要这样嘛,可是花了我一个多星期更新那些数据的,不行真的是血的教训了,快过年了,不要嘛


好像确实不行,当教训吧,下次更新前先备份
------解决方案--------------------
我觉得不妨先把你的UPDATE语句先贴出来让我们看看。有些语句是可以根据逻辑还原的。
例如:UPDATE 表A from 表B SET A.CLBZ=2 WHERE A.LSZH=B.LSZH AND A.CLBZ=1
那么还原的语句就是:UPDATE 表A from 表B SET A.CLBZ=1 WHERE A.LSZH=B.LSZH AND A.CLBZ=2
当然我举例的这种情况非常简单,具体问题还需具体分析
------解决方案--------------------

批量更新……
我记得有个日志查看器,不知道能否从里面看是不是有办法
SQL日志文件查看工具(Log Explorer for SQL Server v4.2)
不知道是否有用
------解决方案--------------------
引用:
引用:我觉得不妨先把你的UPDATE语句先贴出来让我们看看。有些语句是可以根据逻辑还原的。
例如:UPDATE 表A from 表B SET A.CLBZ=2 WHERE A.LSZH=B.LSZH AND A.CLBZ=1
那么还原的语句就是:UPDATE 表A from 表B SET A.CLBZ=1 WHERE A.LSZH=……


我以前也有这种情况,太危险了,一不小心,就更新错了,所以建议你先这样:

 select *
from IncomeAndExpense 
--set Amount=18591.00
 where BPCSAccountCode=19601 and companyid='ra' and accountmonth=12

然后 再写个update语句,这样比较好,否则你就只能用第三方的软件来恢复;

另外,没备份没关系,只要你的数据库恢复模式full的话,数据库在没有进行日志备份的情况下,应该是不会截断日志的,那么你还是可以做日志备份,应该还是能恢复的,有到指定时间点的恢复,只要你记下你什么时候执行了上面的语句,应该还是能恢复的。