400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
YMatrix 文档
快速上手
集群部署
SQL参考
工具指南
启动事务块。
BEGIN [WORK | TRANSACTION] [transaction_mode]
其中 transaction_mode 是:
ISOLATION LEVEL {READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE}
READ WRITE | READ ONLY
[ NOT ] DEFERRABLE
BEGIN 启动事务块,即 BEGIN 命令之后的所有语句将在单个事务中执行, 直到给出显式的 COMMIT 或 ROLLBACK。 默认情况下(没有 BEGIN),YMatrix 数据库以自动提交模式执行事务, 即每个语句在其自己的事务中执行,并且在语句末尾隐式执行提交(如果执行成功,否则回滚) 。
在事务块中,语句的执行速度更快,因为事务启动/提交需要大量的 CPU 和磁盘活动。 在事务中执行多个语句对于确保进行一些相关更改时的一致性也很有用: 其他会话将无法看到中间状态,其中不是所有相关更新都完成。
如果指定了隔离级别,读/写模式或可延迟模式,则新事务具有那些特征, 就像执行 SET TRANSACTION 一样。
WORK
TRANSACTION
SERIALIZABLE
READ COMMITTED
READ UNCOMMITTED
START TRANSACTION 具有与 BEGIN 相同的功能。
使用 COMMIT 或 ROLLBACK 终止事务块。
如果已经在事务块中,则发出 BEGIN 会引起警告消息。 事务状态不受影响。 要将事务嵌套在事务块中,请使用保存点(请参见 SAVEPOINT)。
要开始事务块:
BEGIN;
要以可重复读隔离级别开始事务块:
BEGIN TRANSACTION ISOLATION LEVEL REPEATABLE READ;
BEGIN 是 YMatrix 数据库语言扩展。 它等效于 SQL 标准命令 START TRANSACTION。
DEFERRABLE transaction_mode 是 YMatrix 数据库语言的扩展。
附带地,BEGIN 关键字在嵌入式 SQL 中用于不同的目的。 建议您在移植数据库应用程序时注意事务语义。