oracle频繁使用commit,Oracle COMMIT语句(提交事务)

在 Oracle 中,COMMIT 语句可以用来提交当前事务的所有更改。提交后,其他用户将能够看到您的更改。本文要为大家带来的就是 COMMIT 语句的用法。

COMMIT语句语法:

Oracle / PLSQL 中 COMMIT 语句的语法是:COMMIT [ WORK ] [ COMMENT clause ] [ WRITE clause ] [ FORCE clause ];

参数

WORK:可选的。它被 Oracle 添加为符合 SQL 标准。使用或不使用 WORK 参数来执行 COMMIT 将产生相同的结果。

COMMENT clause:可选的。 它用于指定与当前事务关联的注释。 该注释最多可以包含在单引号中的 255 个字节的文本中。 如果出现问题,它将与事务ID一起存储在名为 DBA_2PC_PENDING 的系统视图中。

WRITE clause:可选的。 它用于指定将已提交事务的重做信息写入重做日志的优先级。 用这个子句,有两个参数可以指定:

WAIT 或 NOWAIT (如果省略,WAIT是默认值)

IMMEDIATE 或 BATCH(IMMEDIATE是省略时的默认值)

FORCE clause:可选的。 它用于强制提交可能已损坏或有疑问的事务。 有了这个子句,可以用3种方式指定FORCE:FORCE'string',[integer]或FORCE CORRUPT_XID'string' 或 FORCE CORRUPT_XID_ALL

注意

必须拥有 DBA 权限才能访问系统视图 - DBA_2PC_PENDING和V$CORRUPT_XID_LIST。

必须拥有 DBA 权限才能指定COMMIT语句的某些功能。

COMMIT语句示例

我们来看一个示例,演示如何使用 COMMIT 语句在 Oracle 中发出提交。COMMIT;

此 COMMIT 示例将执行与以下相同的操作:COMMIT WORK WRITE WAIT IMMEDIATE;

在此示例中,隐含了 WORK 关键字,并且省略 WRITE 子句将缺省为 WRITE WAIT IMMEDIATE,因此它与前面的 COMMIT 语句是等效的。

添加备注

我们来看一个显示如何使用 COMMENT 子句的 COMMIT 示例:

例如,您可以通过两种方式使用注释编写 COMMIT:COMMIT COMMENT 'This is the comment for the transaction';

SQL

或者 -COMMIT WORK COMMENT 'This is the comment for the transaction';

由于始终隐含 WORK 关键字,因此这两个 COMMIT 示例都是等效的。 如果事务出错或存在疑问,COMMIT 会将包含在引号中的注释与事务 ID 一起存储在 DBA_2PC_PENDING 系统视图中。

强制

最后,看一下显示如何使用 FORCE 子句的 COMMIT 示例。

例如,可以通过两种方式编写可疑事务的 COMMIT:COMMIT FORCE '22.14.67';

或者 -COMMIT WORK FORCE '22.14.67';

由于始终隐含 WORK 关键字,因此这两个 COMMIT 示例都会强制执行由事务 ID “22.14.67”标识的已损坏或疑问事务。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值