意外执行了drop table命令

6

非常需要帮助。

我不小心从数据库中删除了一张表。虽然有一个15天之前的数据库备份,但我现在该怎么办才能找回这个表的数据呢?

请问有人知道任何方法可以找回我的数据吗?

谢谢!


1
请参考以下链接,了解从事务日志中恢复数据的方法:http://www.sqlservercentral.com/Forums/Topic456434-357-1.aspx - unlimit
2
数据库采用哪种恢复模式? - Martin Smith
你怎么会“不小心”执行一个 DROP TABLE 命令呢?如果你本来就不想这样做,那么一开始就不应该写它。 - Anthony Grist
您最后一次备份后缺少了15天的数据,是吗? - user170442
只是告诉我为什么要用“赞”? - Suraj Singh
4个回答

2
在进行任何操作之前,请备份您当前的数据和事务日志。
我个人从未遇到过这个问题,但我知道一些人会强烈推荐使用ApexSql恢复工具 - 虽然价格不便宜,但如果其他方法对您无效,它可能是值得的。

1

0
  1. 备份您现有的数据库。
  2. 15天前的备份中恢复数据库,但作为新数据库(使用新名称)。
  3. 获取表的创建脚本。
  4. 在当前数据库中创建表。
  5. 使用SELECT... INTO...将数据从一个数据库传输到另一个数据库。

他们怎么能从不存在的东西中进行SELECT INTO操作呢? - Anthony Grist
我相信他们正在询问是否有一种方法可以获取过去15天的数据(即最后备份后所做的更改),而不是如何从完整的数据库备份中恢复单个表。 - Anthony Grist

0

如果您现在备份数据库和日志(假设您没有截断/缩小它们),那么您可以将此备份还原到删除表之前的某个时间点。请参阅此 Technet 文章:

http://technet.microsoft.com/en-us/library/ms179451(v=sql.100).aspx

请确保不要覆盖您的旧备份,因为如果您无法将其恢复到该时间点,则可能需要像其他答案所述那样使用旧备份。

此外,请确保将其还原到一个新的数据库名称,并在确认数据已恢复到应有的状态后将其重命名。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接