pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
START TRANSACTION — 开始一个事务块
START TRANSACTION [ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ]
无。
START TRANSACTION成功时返回的消息。
WARNING: BEGIN: already a transaction in progress发出命令时已经有一个事务在进行中。
这条命令开始一个新事务。如果指定了隔离级别, 新事务就具有该隔离级别。在所有其他方面,这条命令的行为与 BEGIN命令相同。
事务的隔离级别也可以用SET TRANSACTION 命令设置。如果没有指定隔离级别,则使用默认的隔离 级别。
SERIALIZABLE 是 SQL99 中的 默认隔离级别,但它不是 PostgreSQL 中通常的默认值:出厂默认设置为 READ COMMITTED。 PostgreSQL 不提供 READ UNCOMMITTED 和 REPEATABLE READ 隔离级别。由于缺乏谓词锁定, SERIALIZABLE 级别并非真正的可串行化。 细节见用户指南。
在 SQL99 中,这条语句还可以指定新事务的 两个其他属性:事务是否为只读,以及诊断区的大小。 这两个概念目前 PostgreSQL 都不支持。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。