如何回滚隐式 SSMS 事务(最后带有 go 的语句)?

Ste*_*ger 5 sql sql-server ssms transactions sql-server-2008

问题:
通常情况下,您可以通过回滚来撤消 sql 命令。

BEGIN TRY
  BEGIN TRANSACTION
  /* run all your SQL statements */
  COMMIT TRANSACTION
END TRY
BEGIN CATCH
  ROLLBACK TRANSACTION
END CATCH
Run Code Online (Sandbox Code Playgroud)

我现在的问题:
如果“一个”做了这个

UPDATE TABLE_X SET FIELD_X = 'bla'
GO
Run Code Online (Sandbox Code Playgroud)

SSMS 中(注意最后的 go)并忘记指定 WHERE 子句,是否有可能(以及如何)回滚 SSMS 在其中执行此命令的隐式事务(最后带有 go 的语句在事务中隐式执行) ?

注意:
我没有这样做,但我的一个同事几天前做了(没有去)。
我解除了他造成的伤害(幸运的是我在他这样做之前 0.5 小时做了备份),但对于未来,知道这一点会很好,因为这也发生在我身上。

小智 2

请参阅下面的链接,我认为它会对您有所帮助

如何从表中恢复旧数据

谢谢阿伦