Sql server 从SQL Server 2000恢复删除的行

Sql server 从SQL Server 2000恢复删除的行,sql-server,sql-server-2000,data-recovery,Sql Server,Sql Server 2000,Data Recovery,脚本使用以下查询意外删除了数据库中的几行: DELETE FROM that_table WHERE id IN (100, 101, 102) 同时添加了更多行。有没有办法将这三行恢复到同一个表(或者另一个数据库/表)中?我不想还原数据库,因为这意味着我将丢失在该查询之后添加/更新的所有数据。手动输入缺少的行是一个选项。由于您使用的是SQL Server 2000,您可能会很幸运,因为免费版可以针对此版本工作 由于您使用的是SQL Server 2000,您可能会很幸运,因为免费软件可以针对

脚本使用以下查询意外删除了数据库中的几行:

DELETE FROM that_table WHERE id IN (100, 101, 102)

同时添加了更多行。有没有办法将这三行恢复到同一个表(或者另一个数据库/表)中?我不想还原数据库,因为这意味着我将丢失在该查询之后添加/更新的所有数据。手动输入缺少的行是一个选项。

由于您使用的是SQL Server 2000,您可能会很幸运,因为免费版可以针对此版本工作

由于您使用的是SQL Server 2000,您可能会很幸运,因为免费软件可以针对此版本工作

幸运的是,我有一个备份,因此我使用此处描述的过程在同一台服务器上但在新数据库下恢复备份:

在新数据库中恢复数据库备份后,我找到了行并插入它们:

INSERT INTO that_database..that_table
SELECT * FROM copy_database..that_table WHERE id IN (100, 101, 102)

上面的查询没有立即执行,我必须启用identity insert并暂时禁用几个约束。

幸运的是,我有一个备份,所以我使用此处描述的过程在同一台服务器上但在新数据库下恢复备份:

在新数据库中恢复数据库备份后,我找到了行并插入它们:

INSERT INTO that_database..that_table
SELECT * FROM copy_database..that_table WHERE id IN (100, 101, 102)
上面的查询不是现成的,我必须启用identity insert并暂时禁用几个约束。

您可以使用SQL Server审计和恢复工具,它从数据库事务日志读取信息,并为DML和DDL操作提供撤消T-SQL脚本

免责声明:我在ApexSQL担任产品支持工程师,这是一个SQL Server审核和恢复工具,可从数据库事务日志中读取信息,并为DML和DDL操作提供撤消T-SQL脚本


免责声明:我在ApexSQL担任产品支持工程师,用另一个名称还原数据库,然后用跨数据库查询复制数据。@rb。我有一个在删除之前创建的备份,因此(I)我如何做(ii)它是否安全;我的意思是,有什么问题吗?因为你需要第二次恢复整个数据(使用不同的名称),你需要额外的磁盘空间-但这就是所有的问题…关于问题-取决于你有多熟练(这里有点问题)以及你计划得有多好(另一个大问题)应用程序有多复杂?有时应用程序内置了一些gotchas。@marc_s:数据库大约4GB,我有1.2TB的空闲空间,所以我没事,对吧?用另一个名称还原数据库,然后用跨数据库查询复制数据。@rb。我有一个在删除之前创建的备份,因此(I)我如何做(ii)它是否安全;我的意思是,有什么问题吗?因为你需要第二次恢复整个数据(使用不同的名称),你需要额外的磁盘空间-但这就是所有的问题…关于问题-取决于你有多熟练(这里有点问题)以及你计划得有多好(另一个大问题)应用程序有多复杂?有时应用程序内置了一些陷阱。@marc_s:数据库大约4GB,我有1.2TB的空闲空间,所以我没事,对吧?