如何在SQL语句中返回

时间:2014-01-02 18:03:53

标签: sql sql-server

我已经运行了SQL server命令(更新命令)。 该命令已成功执行且表已更新

有没有办法收回那个命令?

注意:没有备份

2 个答案:

答案 0 :(得分:7)

如果您最初提出问题我如何UPDATE ROLLBACK可能会BEGIN TRANSACTION UPDATE blah SET value = newvalue WHERE condition = someothervalue --COMMIT TRANSACTION 我会告诉您,您应该像这样进行临时更新。

COMMIT TRANSACTION

然后,如果结果符合预期,则运行ROLLBACK TRANSACTION。如果他们不是,你可以做{{1}}。但是,由于您已经完成了更新并且没有备份或恢复计划,因此非常不幸。

答案 1 :(得分:2)

在您执行了更新命令之后,唯一的方法就是恢复备份。

我在编写任何修改脚本时所做的是将命令包装在事务中,然后运行回滚或提交,具体取决于查询是否执行为怀疑。

示例:

--start the transaction only execute the first three lines,  this leaves the transaction open
BEGIN TRANSACTION
UPDATE TABLEA
SET COL1 = "newValue"

--examine data and based on the results run one of these two lines
ROLLBACK TRANSACTION

COMMIT TRANSACTION