COMMIT

COMMIT

현재 세션의 열린 트랜잭션(transaction)을 커밋하는 명령이에요.

출처: 문서

본문

관련 명령: BEGIN, ROLLBACK, SHOW TRANSACTIONS, DESCRIBE TRANSACTION

구문 (Syntax)

COMMIT [ WORK ]

매개변수 (Parameters)

WORK — 다른 데이터베이스 시스템과의 호환성을 제공하는 선택적 키워드예요.

사용 메모 (Usage notes)

  • 같은 범위 내에서 두 개의 COMMIT 문이 연속으로 실행되면 두 번째 문은 무시돼요. 예를 들어 다음 코드에서 두 번째 COMMIT은 효과가 없어요. 커밋할 열린 트랜잭션이 없기 때문이에요.
BEGIN;
INSERT INTO table1 ...;
COMMIT;
COMMIT;  -- Ignored!

자율 범위 트랜잭션과 저장 프로시저를 사용하면 규칙이 더 복잡해질 수 있어요.

예시 (Examples)

트랜잭션을 시작하고, 테이블에 값을 삽입한 뒤, 커밋해 트랜잭션을 완료해요.

SELECT COUNT(*) FROM A1;

+----------+
| COUNT(*) |
|----------+
|        0 |
+----------+

BEGIN NAME T3;

SELECT CURRENT_TRANSACTION();

+-----------------------+
| CURRENT_TRANSACTION() |
|-----------------------+
| 1432071497832         |
+-----------------------+

INSERT INTO A1 VALUES (1), (2);

+-------------------------+
| number of rows inserted |
|-------------------------+
|                       2 |
+-------------------------+

COMMIT;

SELECT CURRENT_TRANSACTION();

더 알아보기 (Learn more)