【问题标题】:MS SQL 2005- Rollback Update queryMS SQL 2005-回滚更新查询
【发布时间】:2012-09-12 07:27:43
【问题描述】:

我使用的是 MS SQL Server 2005 企业版。我执行了一个更新查询来影响一行和一列中的记录。

update HS_SM_USERACCOUNT 
set ACCOUNTPOLICYTYPE=1  
where EMP_NUMBER='000540' and USERID='03510410@' 

之前名为ACCOUNTPOLICYTYPE 的列在WHERE 子句中为该特定条件保存值1。现在我想在不再次执行更新查询的情况下获得以前的状态。

ROLLBACK 会帮助我吗?请帮助我。

【问题讨论】:

  • 那么,您想将 accounttype 设置为 0 或其他非 1 的值吗?如果不执行 UPDATE 语句或从运行 UPDATE 之前恢复备份,则无法执行此操作。如果要执行 ROLLBACK,则必须首先执行 BEGIN TRANSACTION 语句。

标签: sql sql-server-2005 rollback


【解决方案1】:

没有。它变了。如果您想知道它是什么,请从备份中恢复

【讨论】:

    【解决方案2】:

    除非您在 TRANSACTION 范围内执行上述查询 - 即在 BEGIN TRAN / COMMIT / ROLLBACK TRAN 块内,否则 ROLLBACK 命令将毫无用处。

    在这种情况下,除了恢复该表数据的旧备份之外,您无法恢复使用上述语句更新的状态

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-17
      • 1970-01-01
      • 1970-01-01
      • 2012-06-22
      • 1970-01-01
      相关资源
      最近更新 更多