일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백트래킹
- 브루트포스 알고리즘
- 자바스크립트
- 다이나믹 프로그래밍
- 백준알고리즘
- Python
- 완전탐색
- DP
- 너비 우선 탐색
- 깊이우선탐색
- 문자열
- 구현
- 브루트포스
- 오라클
- 스택
- SW Expert Academy
- 다익스트라
- 그리디 알고리즘
- 파이썬
- 그래프 이론
- 너비우선탐색
- SWEA
- 데이터베이스
- oracle
- 그래프 탐색
- 백준 알고리즘
- 프로그래머스
- BFS
- javascript
- DFS
- Today
- Total
목록트랜잭션 (2)
민규의 흔적
COMMIT과 ROLLBACK 트랜잭션의 완료 - COMMIT 연산 트랜잭션에서 변경하려는 내용이 데이터베이스에 완전하게 반영된다. 트랜잭션의 철회 - ROLLBACK 연산 트랜잭션에서 변경하려는 내용이 데이터베이스 일부만 반영된 경우, 원자성을 보장하기 위해서 트랜잭션이 갱신한 사항을 트랜잭션 수행되기 전의 상태로 되돌린다. 아래의 예시를 보자. 위 그림의 파란색 선 전체를 하나의 트랜잭션으로 보자. 위의 트랜잭션 연산은 정상적으로 수행되어, 끝내 COMMIT 연산을 통해 데이터베이스에 트랜잭션으로 변경된 내용이 그대로 반영되었다. 하지만, 아래의 트랜잭션 연산은 d1, u1, i1 연산을 수행한 이후, i2 연산을 수행하기 전에 고장이 나버려 수행하지 못하였다. 위와 같은 경우 ROLLBACK 연산을..
트랜잭션이란, 하나의 논리적인 단위를 수행하는 데이터베이스 연산자들의 모임이다. 40명의 학생 데이터 중, 하나를 삽입하는 것도 트랜잭션이며, 한 번에 삽입하는 것도 트랜잭션이다. DBMS는 트랜잭션 단위로 연산 중간에 하나라도 실패하면 전으로 돌릴 수 있다. 다음의 예시를 보자. 위 예시는 두 사람 간의 계좌이체 트랜잭션이다. 계좌이체 시 한 명은 돈을 보냈는데 다른 한 명은 돈을 받지 못하거나, 반대로 돈을 보내려다 취소했는데 다른 한 명이 돈을 받는 상황이 생기면 매우 곤란할 것이다. 한 명이 돈을 보내면 다른 한 명은 무조건 돈을 받아야 하고, 한 명이 돈을 보내지 않으면 다른 한 명은 무조건 돈을 받지 않는 상태만이 유효해야 한다. 즉, 위의 2개의 SQL문은 하나의 트랜잭션으로 취급하며, 모두..