Yesterday I wrote some code module, that wrote wrong data in almost 400 existing records in important database on SQL Server 2008. I didn't make backup of this database (my mistake). So the question is how do I rollback these 400 transactions? Is there any way to do this? Thanks.

有帮助吗?

解决方案

You can't rollback, but if the database is in full recovery model, then you can restore to another servar with stopat, and recover the deleted rows from there.

其他提示

You can roll back a transaction as long as you haven't committed it.

But if you ran it yesterday, chances are very high you did commit - and then there's no way back.

So you're options are to

  • either restore a backup (and next time remember to take one before such an operation!)
  • manually "undo" those 400 transactions
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top