트랜잭션 처리: COMMIT과 ROLLBACK의 역할과 활용법
2023. 11. 13. 19:29ㆍ개발 문서/SQL
728x90
반응형
트랜잭션은 데이터베이스에서 한 개 또는 그 이상의 작업을 수행하는 논리적인 작업 단위입니다. 트랜잭션 처리는 데이터베이스에서 데이터 일관성과 무결성을 유지하기 위해 매우 중요합니다. 트랜잭션은 성공적으로 완료되었을 때 COMMIT
을 사용하여 결과를 영구히 저장하거나, 문제가 발생했을 때 ROLLBACK
을 사용하여 트랜잭션을 취소하고 이전 상태로 되돌립니다.
COMMIT의 역할과 사용법:
COMMIT
은 하나 이상의 SQL 문이 성공적으로 실행되었을 때 트랜잭션을 확정하고 데이터베이스에 변경 사항을 영구히 저장하는 데 사용됩니다. 일반적으로 다음과 같이 사용됩니다:
-- 트랜잭션 시작
START TRANSACTION;
-- 여러 SQL 문 수행
-- 모든 작업이 성공적으로 완료되면 트랜잭션 확정
COMMIT;
예를 들어, 은행 계좌 이체를 수행하는 트랜잭션을 고려해보겠습니다:
-- 트랜잭션 시작
START TRANSACTION;
-- 송금자의 계좌에서 금액 차감
UPDATE accounts SET balance = balance - 100 WHERE account_number = 'sender_account';
-- 수취자의 계좌에 금액 추가
UPDATE accounts SET balance = balance + 100 WHERE account_number = 'recipient_account';
-- 모든 작업이 성공적으로 완료되면 트랜잭션 확정
COMMIT;
ROLLBACK의 역할과 사용법:
ROLLBACK
은 트랜잭션을 취소하고, 트랜잭션 시작 전의 상태로 되돌리는 데 사용됩니다. 예를 들어, 트랜잭션 중에 오류가 발생했을 때 사용합니다. 일반적으로 다음과 같이 사용됩니다:
-- 트랜잭션 시작
START TRANSACTION;
-- 여러 SQL 문 수행
-- 오류가 발생했을 경우 트랜잭션 취소
ROLLBACK;
ROLLBACK
은 트랜잭션 내에서 문제가 발생했을 때, 예를 들어 제약 조건 위반, 데이터베이스 오류 등을 감지하면 사용됩니다. 트랜잭션을 취소하고 이전 상태로 돌아가므로 데이터베이스의 일관성이 유지됩니다.
트랜잭션 처리는 데이터베이스에서 안전하고 신뢰성 있는 작업을 수행하기 위해 필수적인 개념이며, COMMIT
과 ROLLBACK
을 올바르게 사용하는 것이 중요합니다.
'개발 문서 > SQL' 카테고리의 다른 글
데이터베이스 백업 및 복원: 중요한 정보를 안전하게 보호하기 (0) | 2023.11.13 |
---|---|
인덱스 최적화: 데이터 검색 속도를 향상시키는 방법 (0) | 2023.11.13 |
SQL Injection 방어: 보안 측면에서의 중요성과 방어 기술 소개` (0) | 2023.11.13 |
서브쿼리의 힘: 하위 쿼리를 활용한 복잡한 데이터 추출 (1) | 2023.11.13 |
데이터 정렬: ORDER BY 절의 활용과 정렬 옵션 (0) | 2023.11.13 |