트랜잭션이란?

Objective_chicorita·2022년 8월 30일
0

SQL

목록 보기
2/5
post-thumbnail

데이터베이스에 쿼리를 날릴때 데이터베이스가 올바른 응답을 줄꺼라고 어떻게 확신하고 사용하고 있나요!?!?
-> 트랜잭션은 사용자가 데이터 베이스에 대한 완전성을 신뢰할 수 있도록 도와줌!

트랜잭션

트랜잭션 : 데이터 베이스의 상태를 변화시키기위해 수행하는 작업단위!하나의 처리를 여러 단계로 다루는 기능
-> 데이터베이스 상태를 변화시키는 수행( INSERT, SELECET, DELETE, UPDATE 등등)


A가 B에게 만원을 보낸다는 작업은 1번~4번까지 일련의 행위를 통해 실행된다. 이러한 최소한의 일련의 행위를 트랜잭션이라고 한다.


트랜잭션의 성질

1. 원자성

: 절대 분리되지 않는 원자처럼! 1번~4번은 분리되지 않고 중간에 멈추지 않고 전부 실행되거나 실패하는 것 뿐임! 일부만 실행되는 경우는 없음.

  • 어느 하나라도 실패해서 이전의 모든 행위를 되도림 : Rollback
  • 1번부터 4번까지 모두 수행완료하여 데이터베이스에 반영되었다 : Commit

2. 일관성

: 데이터베이스의 상태나 데이터베이스 내의 계층관계, 칼럼들의 속성들이 일관되게 유지.

3. 지속성

: 트랜잭션이 성공적으로 수행되어 commit되었다면 어떤 문제가 발생하더라도 데이터베이스의 배용이 영원히 지속된다. 변하지 않는다.

4. 독립성

: 독립성은 둘 이상의 트랜잭션이 동시에 실행되고 있을 경우 어떤 하나의 트랜잭션이라도, 다른 트랜잭션의 연산에 끼어들 수 없다는 점을 가리킨다.
하나의 특정 트랜잭션이 완료될때까지, 다른 트랜잭션이 특정 트랜잭션의 결과를 참조할 수 없다.

profile
객체지향 치코리타와 함께하는 dev_travel

0개의 댓글