Oracle设置事务(SET TRANSACTION语句)

这篇Oracle教程解释了如何在Oracle中使用SET TRANSACTION语句的语法和示例。

在Oracle中,SET TRANSACTION语句用于将事务设置为只读,将事务设置为读/写,设置事务的隔离级别,为事务分配名称或将事务分配回滚段。

语法
Oracle / PLSQL中SET TRANSACTION语句的语法是:

SET TRANSACTION [ READ ONLY | READ WRITE ]
                [ ISOLATION LEVEL [ SERIALIZE | READ COMMITED ]
                [ USE ROLLBACK SEGMENT 'segment_name' ]
                [ NAME 'transaction_name' ];

参考

  • READ ONLY - 可选的。 如果指定,它将事务设置为只读事务。
  • READ WRITE - 可选的。 如果指定,它将事务设置为读/写事务。
  • ISOLATION LEVEL - 可选的。 如果指定,它有两个选项:
    • ISOLATION LEVEL SERIALIZE - 如果事务尝试更新由另一个事务更新并未提交的资源,则事务将失败。
    • ISOLATION LEVEL READ COMMITTED - 如果事务需要另一个事务持有的行锁,则事务将等待,直到行锁被释放。
  • USE ROLLBACK SEGMENT - 可选的。 如果指定,它将事务分配给由'segment_name'标识的回退段,该段是用引号括起来的段名称。
  • NAME - 为'transaction_name'标识的事务分配一个名称,该事务用引号括起来。

示例

我们来看一个演示如何在Oracle中使用SET TRANSACTION语句的示例。

只读
首先,下面来看看看如何使用SET TRANSACTION语句将事务设置为只读。

例如:

SET TRANSACTION READ ONLY NAME 'RO_example';

SET TRANSACTION示例会将当前事务设置为只读,并为其分配“RO_example”的名称。

读写

接下来,下面来看看看如何使用SET TRANSACTION语句将事务设置为读/写。

例如:

SET TRANSACTION READ WRITE NAME 'RW_example';


posted @ 2018-03-22 08:16  YouseiRaws  阅读(878)  评论(0编辑  收藏  举报