======== ROLLBACK ======== .. container:: refentry :name: SQL-ROLLBACK .. container:: titlepage .. container:: refnamediv .. rubric:: ROLLBACK :name: rollback ROLLBACK — 中止当前事务 .. container:: refsynopsisdiv .. rubric:: 大纲 :name: 大纲 .. code:: synopsis ROLLBACK [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ] .. container:: refsect1 :name: id-1.9.3.166.5 .. rubric:: 描述 :name: 描述 ``ROLLBACK``\ 回滚当前事务并且导致 该事务所作的所有更新都被抛弃。 .. container:: refsect1 :name: id-1.9.3.166.6 .. rubric:: 参数 :name: 参数 .. container:: variablelist ``WORK`` \ ``TRANSACTION`` 可选关键词,没有效果。 ``AND CHAIN`` 如果指定了\ ``AND CHAIN``\ ,则立即启动与刚刚完成事务具有相同事务特征(参见 `SET TRANSACTION `__\ )的新事务。 否则,不会启动任何新事务。 .. container:: refsect1 :name: id-1.9.3.166.7 .. rubric:: 注解 :name: 注解 使用\ `COMMIT `__\ 可成功地终止一个事务。 在一个事务块之外发出\ ``ROLLBACK``\ 会发出一个警告并且不会有效果。 事务块之外的\ ``ROLLBACK AND CHAIN`` 是一个错误. .. container:: refsect1 :name: id-1.9.3.166.8 .. rubric:: 示例 :name: 示例 要中止所有更改: .. code:: programlisting ROLLBACK; .. container:: refsect1 :name: id-1.9.3.166.9 .. rubric:: 兼容性 :name: 兼容性 命令\ ``ROLLBACK``\ 符合 SQL 标准。窗体\ ``ROLLBACK TRANSACTION``\ 是一个 OushuDB 扩展。 .. container:: refsect1 :name: id-1.9.3.166.10 .. rubric:: 另见 :name: 另见 `BEGIN `__, `COMMIT `__, `ROLLBACK TO SAVEPOINT `__