데이터베이스에서 상태를 변화 시키기 위한 최소 실행 단위를 말한다.
어떤 작업을하기 위해 최소한의 연산을 의미한다
예를 들어보자면,
이처럼 데이터의 변경 할 때 묶어서 관리하는 방식을 트랙잭션이라고 한다.
데이터베이스에 저장되어있는 데이터의 안정성을 확보하기 위해 사용한다.
원자성(Atomicity)
트랜잭션이 실행되었을 때 모든 부분이 반영되거나 또는 반영이 안되어야한다는 것이다.
예시에서 출금만되고 입금이 안되면 이전 입금도 취소가 되어야한다는 의미이다.
일관성(Consistency)
트랜잭션의 작업 처리 결과가 항상 일관성이 있어야 한다는 것이다.
트랜잭션이 진행되는 동안에 데이터베이스가의 제약 및 규칙이 변경 안된다고 것이다.
독립성(Isolation)
여러개의 트랜직션이 동시에 실행이 되고 있을 때 A트랜직션이 B의 트랜직션의 연산에 관여할 수 없다는 것을 의미한다. 사실상 연속으로 실행된 것과 결과과 동일하다.
지속성(Durability)
지속성은 트랜잭션의 모든 활동을 로그 파일에 기록하고 관리합니다.
이 부분 때문에 데이터의 일관성을 복구하거나 장애 시 원복 작업을 수행할 수 있습니다.
활동 (Active)
트랜잭션이 시작된 후에 아직 완료되지 않은 상태
이 시점에서 트랜잭션은 데이터베이스의 일부를 읽거나 쓸 수 있습니다.
부분 완료 (Partially Committed)
트랜잭션이 마지막 데이터베이스 조작을 수행한 상태이지만, 아직 커밋되기 전의 상태를 말합니다.
이 시점에서는 롤백을 수행이 가능합니다.
완료 (Committed)
트랜잭션이 성공적으로 완료되고 데이터베이스의 상태가 변경된 상태입니다. 트랜잭션은 영구적으로 데이터베이스에 적용되었으며 더 이상 롤백할 수 없습니다.
실패 (Failed)
트랜잭션 실행 중에 오류가 발생하거나, 데이터베이스 일관성을 유지할 수 없는 상황을 말합니다.이 시점에서 롤백을 수행하여 이전 상태로 복원해야 합니다.
5.롤백 (Rolled Back)
트랜잭션을 취소하고 이전 상태로 복원한 완료된 상태를 말합니다.
트랜잭션이 완료되지 않았으며 변경 사항이 데이터베이스에 적용되지 않았습니다.