#SET TRANSACTION

# 通用描述

SET TRANSACTION用于设置事务的隔离级别,事务的隔离级别有:

  • READ COMMITTED:读已提交,系统默认的隔离级别,事务每条语句支持语句级一致性读。
  • CURRENT COMMITTED:读当前提交,为读已提交的一种,但不提供语句内的读一致性。
  • SERIALIZABLE:序列化读,事务串行化,提供事务级一致性读,和完整的写写串行化冲突检测机制。

分布式部署中的事务隔离级别默认为READ COMMITTED,用户无法执行本语句。

# 语句定义

set transaction::=

syntax
SET TRANSACTION ISOLATION LEVEL READ COMMITTED CURRENT COMMITTED SERIALIZABLE NAME comment_string

# read committed

将事务隔离级别设置为读已提交。

示例(单机、共享集群部署)

SET TRANSACTION ISOLATION LEVEL READ COMMITTED;

# current committed

将事务隔离级别设置当前提交。

示例(单机、共享集群部署)

SET TRANSACTION ISOLATION LEVEL CURRENT COMMITTED;

# serializable

将事务隔离级别设置为串行化。

示例(单机、共享集群部署)

SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;