Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- ejb
- 명사 분석기
- php thumbnail
- 메일왕창보내는법
- 베트남어
- Node.js
- 나의 프로젝트
- nodejs express
- 디즈니씨
- ajax
- Cross
- 나의 취미
- 주식이야기
- iBatis
- flex3
- 명사 뽑아내기
- 명사 추출기
- Lift
- 책이야기
- express for node.js
- 도커
- C/C++
- php
- 스킨 스쿠버
- scala
- node.js web framework
- ror실행
- Eclipse
- rss
- docker
Archives
- Today
- Total
nkdk의 세상
오라클 DB 설계 및 활용 8일째 2번 내용 본문
*** TRANSACTION
단위별 데이터 처리를 의미한다 클라이언트 상에 읽혀진 자료에 변화가 있으면 수정된 자료에 대해 COMMIT 이나 ROLLBACK 으로 원본 DB에 저장 또는 취소 할 수 있다. 이때 여러 개의 데이터에 의한 수정, 삭제, 추가, 작업을 하나의 단위로 묶어 놓고, COMMIT이나 ROLLBACK 을 수동으로 처리한다.
이로 인해 클라이언트 상에서의 오류를 선별적으로 처리 할 수 있다.
-- TRASACTION의 구성
DML: SELECT(DQL), INSERT, UPDATE, DELETE
DDL: CREATE, ALTER, DROP, TRUNCATE, RENAME, COMMENT
DCL: GRANT, REVOKE
TCL:
COMMIT: 저장되지 않은 자료를 DB에 저장하고 현재의 트랜잭션을 종료
ROLLBACK: 자료의 변경사항을 취소하고 현재 트랜잭션을 종료
SAVEPOINT: 트랜잭션의 범위 지정
-- COMMIT트랜잭션시작
CREATE TABLE SAWON3 AS SELECT * FROM SAWON;
DELETE FROM SAWON3 WHERE SAWON_NO=1;
COMMIT;
--트랜잭션끝
--다시 ROLLBACL트랜잭션 시작
SELECT * FROM SAWON3;
DELETE FROM SAWON3 WHERE SAWON_NO=2;
SELECT * FROM SAWON3
ROLLBACK;
--트랜잭션끝
--다시 SAVEPOINT트랜잭션 시작
SELECT * FROM SAWON3;
UPDATE SAWON3 SET SAWON_PAY = 10000 WHERE SAWON_NO=2;
SAVEPOINT A;
UPDATE SAWON3 SET SAWON_PAY = 11000 WHERE SAWON_NO=3;
ROLLBACK TO SAVEPOINT A;
-- DEADLOCK : 두개 이상의 트랜잭션이 서로의 진행을 막고 충돌하는 현상
트랜잭션을 진행 중인 상태에서 다른 사용자가 해당 테이블을 만질 때 사용 할 때 데드락 상태에 빠진다.
오늘은 여기 까지입니다.^^
단위별 데이터 처리를 의미한다 클라이언트 상에 읽혀진 자료에 변화가 있으면 수정된 자료에 대해 COMMIT 이나 ROLLBACK 으로 원본 DB에 저장 또는 취소 할 수 있다. 이때 여러 개의 데이터에 의한 수정, 삭제, 추가, 작업을 하나의 단위로 묶어 놓고, COMMIT이나 ROLLBACK 을 수동으로 처리한다.
이로 인해 클라이언트 상에서의 오류를 선별적으로 처리 할 수 있다.
-- TRASACTION의 구성
DML: SELECT(DQL), INSERT, UPDATE, DELETE
DDL: CREATE, ALTER, DROP, TRUNCATE, RENAME, COMMENT
DCL: GRANT, REVOKE
TCL:
COMMIT: 저장되지 않은 자료를 DB에 저장하고 현재의 트랜잭션을 종료
ROLLBACK: 자료의 변경사항을 취소하고 현재 트랜잭션을 종료
SAVEPOINT: 트랜잭션의 범위 지정
-- COMMIT트랜잭션시작
CREATE TABLE SAWON3 AS SELECT * FROM SAWON;
DELETE FROM SAWON3 WHERE SAWON_NO=1;
COMMIT;
--트랜잭션끝
--다시 ROLLBACL트랜잭션 시작
SELECT * FROM SAWON3;
DELETE FROM SAWON3 WHERE SAWON_NO=2;
SELECT * FROM SAWON3
ROLLBACK;
--트랜잭션끝
--다시 SAVEPOINT트랜잭션 시작
SELECT * FROM SAWON3;
UPDATE SAWON3 SET SAWON_PAY = 10000 WHERE SAWON_NO=2;
SAVEPOINT A;
UPDATE SAWON3 SET SAWON_PAY = 11000 WHERE SAWON_NO=3;
ROLLBACK TO SAVEPOINT A;
-- DEADLOCK : 두개 이상의 트랜잭션이 서로의 진행을 막고 충돌하는 현상
트랜잭션을 진행 중인 상태에서 다른 사용자가 해당 테이블을 만질 때 사용 할 때 데드락 상태에 빠진다.
오늘은 여기 까지입니다.^^