COMMIT (SQL)

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

COMMIT (SQL)은 SQL에서 RDBMS 내 데이터베이스 트랜잭션을 종료하고, 변경 사항을 다른 사용자가 볼 수 있도록 만드는 명령어이다. 일반적으로 `BEGIN WORK` 구문으로 시작하여 `COMMIT` 구문으로 종료되며, `ROLLBACK` 구문을 사용하여 이전 상태로 되돌릴 수도 있다. COMMIT은 SAVEPOINT와 함께 사용될 수도 있으며, 트랜잭션의 임시 변경 사항을 취소하는 롤백과 반대되는 개념이다.

COMMIT (SQL)
데이터베이스 트랜잭션 관리
용어커밋 (Commit)
설명트랜잭션의 모든 변경 사항을 데이터베이스에 영구적으로 적용하는 프로세스이다.
반대 기능롤백
SQL
구문 (Transact-SQL)COMMIT [TRANSACTION | WORK] [transaction_name]
구문 (Oracle SQL)COMMIT [WORK] [COMMENT 'text'] [FORCE integer];
설명현재 트랜잭션의 모든 변경 사항을 저장한다. 트랜잭션은 데이터의 일관성을 보장하기 위해 사용된다. 커밋은 트랜잭션의 끝을 표시하고, 변경 사항을 데이터베이스에 영구적으로 저장한다.
📚 더 읽어볼만한 페이지
  • 트랜잭션 처리 - 2단계 커밋 프로토콜
    2단계 커밋 프로토콜은 분산 컴퓨팅 환경에서 트랜잭션의 원자성을 보장하는 분산 알고리즘으로, 조정자와 참가자로 구성되어 모든 참가자가 트랜잭션을 완료하거나 아무도 완료하지 못하도록 하며, 커밋 요청 및 커밋 단계를 거쳐 모든 참가자의 동의를 얻어야 커밋된다.
  • 트랜잭션 처리 - 온라인 트랜잭션 처리
    온라인 트랜잭션 처리(OLTP)는 실시간 데이터베이스 트랜잭션 처리 방식으로, 가용성, 속도, 동시성, 내구성을 목표로 은행, 항공사, 전자 상거래 등에서 활용된다.
  • 데이터베이스 관리 시스템 - 트랜잭션 처리
    트랜잭션 처리는 데이터베이스 시스템에서 데이터의 일관성과 무결성을 보장하기 위한 기술이며, ACID 속성을 통해 데이터 정확성을 유지하고 롤백, 데드락 처리 등의 기술을 활용한다.
  • 데이터베이스 관리 시스템 - 저장 프로시저
    저장 프로시저는 데이터베이스 관리 시스템에서 SQL 문들을 미리 컴파일하여 저장하고, 모듈화, 보안성, 성능 향상, 유지보수 용이성과 같은 특징을 가지며, 데이터베이스 시스템마다 구현 방식과 지원하는 언어가 다를 수 있는 코드 묶음이다.
  • 데이터 관리 - 데이터 센터
  • 데이터 관리 - 정보 아키텍처
    정보 아키텍처는 정보 시스템 및 정보 기술 분야에서 공유 정보 환경의 구조적 설계를 의미하며, 웹사이트, 소프트웨어 등의 구성과 레이블링을 포함하여 검색 용이성과 사용성을 지원하고, 도서관정보학에 기원을 두고 있다.

2. SQL COMMIT 명령어

SQL에서 `COMMIT`은 RDBMS 내 데이터베이스 트랜잭션을 종료하고 모든 변경 사항을 다른 사용자가 볼 수 있게 한다. 일반적인 형식은 `BEGIN WORK`로 시작하여 `COMMIT`으로 끝난다. `ROLLBACK`은 `BEGIN WORK`로 시작된 모든 작업을 이전으로 되돌리며, `COMMIT`은 SAVEPOINT를 사용할 수 있다.

커밋의 반대는 트랜잭션의 임시 변경을 포기하는 롤백이다.

2.1. 트랜잭션

트랜잭션은 데이터베이스에서 일련의 작업을 묶어 하나의 논리적인 단위로 처리하는 것이다. `BEGIN WORK` 구문으로 시작하여 `COMMIT` 또는 `ROLLBACK` 구문으로 종료된다.

SQL에서 `COMMIT`은 RDBMS 내에 있는 데이터베이스 트랜잭션을 종결시키고, 모든 변화를 다른 사용자들이 볼 수 있게 만들어 준다. 일반적인 형식은 `BEGIN WORK` 구문으로 시작하여 `COMMIT` 구문이 나오는 것이다. `ROLLBACK` 구문으로 시작될 수도 있는데, 이것은 `BEGIN WORK`로 시작된 모든 작업을 그 이전으로 되돌린다. `COMMIT` 구문은 또한 현존하는 SAVEPOINT가 사용될 수 있다.

트랜잭션 측면에서 커밋의 반대는 트랜잭션의 임시적인 변화를 포기하는 것(롤백)이다.

2.2. COMMIT의 역할

SQL에서 `COMMIT`은 RDBMS 내에 있는 데이터베이스 트랜잭션을 종료시키고, 모든 변화를 다른 사용자들이 볼 수 있게 만들어 준다. 일반적인 형식은 `BEGIN WORK` 구문으로 시작하여 `COMMIT` 구문이 나오는 것이다. `ROLLBACK` 구문으로 시작될 수도 있는데, 이것은 `BEGIN WORK`로 시작된 모든 작업을 그 이전으로 되돌린다. `COMMIT` 구문은 또한 현존하는 SAVEPOINT가 사용될 수 있을 것이다.

트랜잭션 측면에서 커밋의 반대는 트랜잭션의 임시적인 변화를 포기하는 것(롤백)이다.

2.3. ROLLBACK과의 관계

SQL에서 `ROLLBACK` 명령어는 데이터베이스 트랜잭션 내의 변경 사항을 모두 취소하고 이전 상태로 되돌리는 역할을 한다. `COMMIT`과 반대되는 역할을 수행하며, 데이터베이스 오류 또는 사용자의 의도적인 작업 취소 등에 사용될 수 있다. `ROLLBACK` 구문은 `BEGIN WORK`로 시작된 모든 작업을 그 이전으로 되돌린다.