4

我认为问题说明了一切,在 SQL Server 管理工作室中错误地执行了以下更新查询

update kms_students set student_campus='4' where student_campus='KL'

受影响的行超过 1000 行,我无法识别它,因为该表已经有student_campus='4'许多先前的行。

是否可以回滚?

4

2 回答 2

3

我相信ApexSQL应该可以解决问题。

ApexSQL 通过分析物理事务日志来工作,该日志基本上包含恢复特定事务和数据所需的所有信息,但 MS 没有提供开箱即用的工具来管理它,除了恢复备份然后手动恢复事务使用RESTORE LOGS记录到特定日期

于 2012-11-02T05:16:38.460 回答
0
  1. 备份。大多数托管公司都保留一个,请尝试尽快给每个人打电话。
  2. 您自己的备份。即使他们老了,他们也会有所帮助。
  3. 保留大量备份,切勿在生产环境中尝试查询。从来没有。(打赌你学会了,对吧?)

为了使它更容易一点,您可以尝试将备份数据库联机并执行一些 PHP/Python/whatever 以便比较备份中的每条记录,并在需要时将当前数据库从“4”更改为“KL”。

可能并不完美,但可以帮助您避免几天的工作。

于 2012-11-02T03:05:48.637 回答