반응형
MySQL에서 중첩된 트랜잭션이 허용됩니까?
MySQL에서 중첩된 트랜잭션을 사용할 수 있습니까?
아니요, 하지만.
InnoDB
서포트SAVEPOINTS
.
다음을 수행할 수 있습니다.
CREATE TABLE t_test (id INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
START TRANSACTION;
INSERT
INTO t_test
VALUES (1);
SELECT *
FROM t_test;
id
---
1
SAVEPOINT tran2;
INSERT
INTO t_test
VALUES (2);
SELECT *
FROM t_test;
id
---
1
2
ROLLBACK TO tran2;
SELECT *
FROM t_test;
id
---
1
ROLLBACK;
SELECT *
FROM t_test;
id
---
MySQL 문서:
트랜잭션은 중첩할 수 없습니다.이는 START TRANSACTION 스테이트먼트 또는 그 동의어 중 하나를 발행할 때 현재 트랜잭션에 대해 암묵적인 커밋이 실행된 결과입니다.https://dev.mysql.com/doc/refman/5.7/en/implicit-commit.html
언급URL : https://stackoverflow.com/questions/1306869/are-nested-transactions-allowed-in-mysql
반응형
'source' 카테고리의 다른 글
PHP에서 폐쇄란 무엇이며 왜 "사용" 식별자를 사용하는가? (0) | 2022.09.25 |
---|---|
Gradle - 기본 매니페스트 속성 없음 (1) | 2022.09.25 |
값을 한 필드에서 두 필드로 분할 (1) | 2022.09.25 |
AWS RDS 연결 중단됨 Haproxy (0) | 2022.09.25 |
MariaDb SQL 주입 (1) | 2022.09.25 |