본문 바로가기

프로그래밍/SQL

SQL TRANSACTION ISOLATION LEVEL

MS-SQL의 Procedure를 작성하게 되면 많이 보게 되는 구문이다.

 

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; 

SET NOCOUNT ON;

* SET NOCOUNT ON  : Trancsaction이 일어나 처리된 행의 개수를 리턴 하는 명령어 이다.

 

여기서 ISOLATION 는 Transaction 중에 고립성(Isolation)

 

SQL은Transaction은 4가지를 가지게 된다.

Atomicity : 원자성

Consistency : 일관성

Isolation : 고립성

Durability : 지속성

 

앞 글자만 따서 SQL Transaction ACID 표현한다.

개념 내용
원자성(Atomicity) 트랜잭션의 처리가 완전히 끝나지 않았을 경우에는 전혀 이루어지지 않은 것과 같아야 한다(all or nothing).
일관성(Consistency) 트랜잭션의 실행이 성공적으로 완료되면 데이터베이스는 모순 없이 일관성이 보존된 상태여야 한다.
고립성(Isolation) 어떤 트랜잭션도 다른 트랜잭션의 부분적 실행 결과를 볼 수 없다
지속성(Durability) 트랜잭션이 성공하면 트랜잭션의 결과를 영구적

참고 : https://thebook.io/006977/0272/

 

SET TRANSACTION ISOLATION LEVEL  뒤에는 네가지의 설정을 줄수가 있다.

 

1. READ UNCOMMITTED

2. READ COMMITTED

3. REPEATABLE READ
4. SERIALIZABLE

 

 

 

 

 

'프로그래밍 > SQL' 카테고리의 다른 글

SAP HANADB 변수선언 하여 입력해서 조회하기  (0) 2023.10.23