如果能从备份文件中只恢复一个表的数据,那不是很好吗?比如,你备份了AdventureWorks数据库,现的你只恢复里面Vendor表数据。不幸的是,SQL Server本身并不支持这样还原,你需要从第三方提供的工具中来执行这样的任务。

提供这种功能的程序都是一些SQL Server第三方备份工具。它们可以让你从备份文件中抽取或是读取单个表数据。

但是这里有一点要注意是,假如你选择恢复一个完整数据库,那么你选择要恢复的数据有可能与你获取的数据不同。原因就是因为当你执行完整数据库备份时,备份文件包括数据文件和事务日志文件。有一些已经提交的事务还没有写入数据文件,在这种情况下,事务仅仅存储在事务日志中,或者部份数据存储在数据文件。当你使用第三方程序恢复所选择的单表数据时,仅仅只能从备份文件中的数据库文件中获取数据,事务日志中的新数据将会被忽略。

...