[DB] 트랜잭션(Transaction)이란?
@욕심쟁이
·2020. 8. 21. 11:34
반응형
트랜잭션(Transaction)이란?
- 논리적인 작업 단위
- 여러 DML아 모여서 하나의 트랜잭션이 구성
- DML 작업 후 commit, rollback 으로 트랜잭션 종료해야 함.
- DDL 작업시 commit이 자동으로 됨
트랜잭션 구성
- 여러 DML구문이 하나의 트랜잭션
- 하나의 DDL구문이 하나의 트랜잭션
- 하나의 DCL 구문이 하나의 트랜잭션
트랜잭션 시작 및 종료
- 시작 : 첫번쨰 DML구문실행시
- 종료 : commit 또는 rollback tlfgodtl
DDL 또는 DCL 구문실행시 (autocommit)
SQL *PLUS 정상 종료 시(autocommit)
시스템장애 시(autorollback)
트랜잭션 제어어(TCL/Transaction Control Language)
- COMMIT : 진행 중인 트랜잭션의 내용을 데이터베이스에 기록하는 명령어.
commit
- ROLLBACK : 진행 중인 트랜잭션의 내용을 취소하는 명령어.
rollback
- SAVEPOINT : 트랜잭션 진행 중 되돌아갈 수 있는 지점을 생성하는 명령어
select * from copy_emp;
update copy_emp set salary =24000 where employee_id=113;
savepoint update_done; -- savepoint 저장
delete copy_emp; -- 테이블데이터삭제
rollback to SAVEPOINT update_done; --savepoint update_done까지 rollback
반응형
'IT > DB' 카테고리의 다른 글
[DB]MYSQL(INSERT/UPDATE/DELETE/SELECT)사용하기 (0) | 2020.08.25 |
---|---|
[DB] 제약조건 5가지(NOT NULL/UNIQUE/PK/FK/CHECK) (0) | 2020.08.24 |
[DB] JDBC란?(MySQL 기준) (0) | 2020.08.20 |
[DB] 데이터 조작어(DML) (0) | 2020.08.19 |
[DB] 데이터타입(IN Oracle) (0) | 2020.08.19 |