Lim Seunghyun Space

Transaction(트랜잭션) 본문

SQL/SQL 공부

Transaction(트랜잭션)

Lim Seung Hyun 2021. 12. 8. 12:19

Transaction(트랜잭션)

  • 모두 성공적으로 실행되던지 아니면 전혀 실행되지 않게 여러 SQL들을 묶어서 하나의 작업처럼 처리하는 방법
  • 모두 적용하거나 모두 취소되는 ALL OR NOTHING의 개념

 

명령어

  • BEGIN
  • COMMIT / END
  • ROLLBACK

 

사용법

  • BEGIN;
    
    SQL 1;
    SQL 2;
    ...
    SQL N;
    
    COMMIT; -- AUTOCOMMIT이 TRUE인 경우 END;
     
    • BEGIN으로 시작하여 SQL문을 순서대로 실행하고, 실패없이 모두 성공하면 SQL문을 모두 반영시켜주는 COMMIT을 사용하거나 AUTOCOMMIT이 TRUE로 되어 있으면 END로 트랜잭션을 종료
    • SQL을 실행중 하나라도 에러가 발생시 BEGIN 이전 상태로 돌아감 (ROLLBACK)

 

 

 

Reference

728x90

'SQL > SQL 공부' 카테고리의 다른 글

[MySQL] DELETE JOIN  (0) 2023.03.20
[MySQL] Swap values within a column  (0) 2023.03.20
DELETE FROM과 TRUNCATE  (0) 2021.12.08