PostgreSQL 8.2.3 中文文档
后退快退快进前进

START TRANSACTION

名称

START TRANSACTION -- 开始一个事务块

语法

START TRANSACTION [ transaction_mode [, ...] ]

这里的 transaction_mode 是下列之一:

    ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }
    READ WRITE | READ ONLY

描述

这条命令开始一个新的事务块。如果声明了隔离级别或者读写模式,那么新事务就使用这个特性,如同执行了 SET TRANSACTION 一样。它和 BEGIN 命令等价。

参数

参阅 SET TRANSACTION 获取有关这个语句参数含义的信息。

兼容性

在标准里,没必要声明 START TRANSACTION 来开始一个事务块:任何 SQL 语句都隐含地开始一个事务块。PostgreSQL 的行为可以认为是隐含地在每条没有跟在 START TRANSACTIONBEGIN 的命令后面自动发出一条 COMMIT ,因此这个行为常被称作"自动提交"。其它关系数据库系统可能也提供自动提交的特性。

SQL 标准要求在相连的 transaction_modes 之间有逗号,但是出于历史原因,PostgreSQL 允许省略这个逗号。

又见 SET TRANSACTION 的兼容性小节。

又见

BEGIN, COMMIT, ROLLBACK, SAVEPOINT, SET TRANSACTION

后退首页前进
SHOW上一级TRUNCATE