Certificate/SQL

[sql] TCL(Transaction Control Language)에 관하여(의미, 예시 중심으로)

imsunbow 2023. 11. 2. 16:30

TCL 정리

 

[Transaction이란?]

트랜젝션(Transaction)이란 밀접히 관련되어 분리될 수 없는 한 개 이상의 데이터베이스 조작을 의미한다.

 

 

[Transaction의 특성]

트랜젝션은 다음 4가지 특성을 만족해야 한다.

- 원자성: 트랜젝션에서 정의된 연산들은 모두 성공적으로 실행되거나 전혀 실행되지 않아야 함(all or nothing)

- 일관성: 트랜젝션이 실행되기 전의 데이터베이스 내용이 잘못되어 있지 않다면 트랜젝션이 실행된 이후에도 데이터베이스의 내용에 잘못이 있으면 안됨

- 고립성: 트랜젝션이 실행되는 도중에 다른 트랜젝션의 영향을 받아 잘못된 결과를 만들어서는 안됨

- 지속성: 트랜젝션이 정상적으로 수행되면 갱신한 데이터베이스의 내용은 영구적으로 저장됨

 

[TCL 언어]

Transaction Control Language 언어에는 Commit, Rollback, Savepoint가 있다.

Commit: 입력된 자료나 수정한 자료에 대해서 또는 삭제한 자료에 대해 문제가 없다고 판단될 경우 트랜젝션을 완료시키기는 명령어

Rollback: 데이터 변경 사항이 취소되어 데이터의 이전상태로 복구된다. 다른 사용자들이 데이터 변경을 할 수 있게 함.

Savepoint: Rollback시 현 지점에서 savepoint까지 부분 rollback이 가능함. 

반응형