云数据库 GAUSSDB-SET TRANSACTION:参数说明
参数说明
- LOCAL
声明该命令只在当前事务中有效。
- SESSION
声明这个命令只对当前会话起作用。
SET SESSION TRANSACTION语句需要在sql_compatibility = 'B'场景下,设置GUC参数b_format_behavior_compat_options为set_session_transaction后生效,作用等同于SET SESSION CHARACTERIS TICS AS TRANSACTION语句。
- GLOBAL
声明这个命令对当前数据库的全局会话生效。
作用范围:在sql_compatibility = 'B'场景下生效。对后续连接的会话生效。
- SESSION CHARACTERISTI CS
声明这个命令只对当前会话起作用。
- ISOLATION LEVEL
指定事务隔离级别,该参数决定当一个事务中存在其他并发运行事务时能够看到什么数据。
- 在事务中第一个数据修改语句(SELECT、INSERT、DELETE、UPDATE、FETCH、COPY)执行之后,当前事务的隔离级别就不能再次设置。
- 事务块内SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL对当前事务不生效,需要COMMIT之后才生效。
取值范围:
- READ COMMITTED:读已提交隔离级别,只能读到已经提交的数据,而不会读到未提交的数据。这是缺省值。
- REPEATABLE READ:可重复读隔离级别,仅仅能看到事务开始之前提交的数据,不能看到未提交的数据,以及在事务执行期间由其它并发事务提交的修改。
- SERIALIZABLE: GaussDB 目前功能上不支持此隔离级别,等价于REPEATABLE READ。
- READ WRITE | READ ONLY
指定事务访问模式(读/写或者只读)。