728x90

트랜잭션이란?

데이터 처리의 한 단위이다

하나의 트랜잭션은 all or noting 방식으로 처리된다.

 

트랜잭션의 특징

1. 원자성 

한 트랜잭션 내의 모든 연산들이 완전히 수행되거나 전혀 수행되지 않음 ( All or Nothing ) 을 의미함

 

2. 일관성 

어떤 트랜잭션이 수행되기 전에 데이터베이스가 일관된 상태를 가졌다면 트랜잭션이 수행된 후에 데이터베이스는 또 다른 일관된 상태를 가짐

 

3. 고립성 

한 트랜잭션이 데이터를 갱신하는 동안 이 트랜잭션이 완료되기 전에는 갱신 중인 데이터를 다른 트랜잭션들이 접근하지 못하도록 해야 함
다수의 트랜잭션들이 동시에 수행되더라도 그 결과는 어떤 순서에 따라 트랜잭션들을 하나씩 차례대로 수행한 결과와 같아야 함

 

4. 지속성

일단 한 트랜잭션이 완료되면 이 트랜잭션이 갱신한 것은 그 후에 시스템에 고장이 발생하더라도 손실되지 않음

 

commit

: transaction (insert, update, delete) 작업내용을 db에 저장

* 자동커밋 : create alter drop renam truncate DDL문

 

rollback

: transaction (insert, update, delete) 작업내용을 취소

이전에 commit 한 곳 까지만 복구됨

 

예약어

savepoint : savepoint 로 저장해 놓은 곳 까지는 rollback시적용되지 않음

 

728x90

'MS SQL' 카테고리의 다른 글

ms sql - update , 다른 테이블과 join 해서 사용하기  (0) 2022.04.18
ms SQL-엑셀 업로드 방법 (데이터 가져오기)  (0) 2022.04.14
SQL rollup, cube 함수  (0) 2021.11.10
SQLD 서브쿼리  (0) 2021.11.09
SQL - 트랜잭션  (0) 2021.11.03

+ Recent posts