티스토리 뷰
DCL(Data Control Language)
: 데이터 제어 언어로 DB권한을 부여 및 삭제하는 GRANT / REVOKE가 있다.
Transaction(트랜잭션)
: 데이터베이스에서 트랜잭션이란 데이터 처리의 한 단위를 말한다.
트랜잭션은 하나의 논리적인 작업단위로 수행되는 일련의 작업으로 정의 한다. 트랜잭션은 ACID라고 불리는 특성이 있다.
Atomicity(원자성) : 트랜잭션은 분리할 수 없는 하나의 단위이기 때문에 작업이 모두 수행되거나 하나도 수행되지 않아야 한다. | |
Consistency(일관성) : 트랜잭션에서 사용되는 모든 데이터는 일관되야 한다 | |
Isolation(격리성, 독립성) : 현재 트랜잭션에서 접근하고 있는 데이터는 다른 트랜잭션으로부터 격리되어야 한다.(트랜잭션이 일어나면 완료되기 전까지는 다른 트랜잭션이 참조할 수 없다. | |
Durability(영속성) : 트랜잭션이 정상적으로 종료 되면 그 결과는 시스템 오류가 발생하더라도 시스템에 영구적으로 적용되어야 한다. |
트랜잭션의 명령어
COMMIT : COMMIT은 트랜잭션의 처음과 끝을 나타낸다. 즉 COMMIT ~ COMMIT 까지가 TRANSCTION이다. | |
ROLLBACK : 트랜잭션을 취소하고 난 뒤 처음부터 다시 시작하거나 SAVEPOINT 부터 취소하고 다시 되돌리는 기능을 한다. | |
SAVEPONIN : 현재까지의 트랜잭션을 특정이름으로 지정할 떄 사용한다. |
COMMIT
: TRANSCTION(INSERT, UPDATE, DELETE) 작업내용을 실제 데이터베이스에 저장합니다.
이전 데이터가 완전히 업데이트 되고, 모든 사용자가 변경된 데이터의 결과를 볼 수 있습니다.
ROLLBACK
: TRANSACTION(INSERT, UPDATE, DELETE) 작업내용을 취소 합니다.
이전에 COMMIT 한 곳 까지만 복구합니다.
자동 COMMIT과 자동 ROLLBACK 명령이 되는 경우
. sqlpuls가 정상 종료 되었다면 자동 COMMIT 되지만 비정상 종료 되었다면 자동 ROLLBACK됩니다.
. DDL과 DCL 명령문이 수행된 경우 자동으로 COMMIT 됩니다.
. 정전이 발생하거나 컴퓨터 다운시 자동으로 ROLLBACK 됩니다.
COMMIT 명령어와 ROLLBACK 명령어의 장점
. 데이터 무결성이 보장됩니다.
. 영구적인 변경 전에 데이터의 변경사항을 확인 할 수 있습니다.
. 논리적으로 연관된 작업을 그룹화 할 수 있습니다.
'back > Oracle Database' 카테고리의 다른 글
Oracle Database(사용자 권한) (0) | 2022.09.05 |
---|---|
Oracle Database(CONSTRAINTS 제약조건) (0) | 2022.09.02 |
Oracle Database(DML) (1) | 2022.08.31 |
Oracle Database(서브 쿼리, DDL) (0) | 2022.08.30 |
Oracle Database(Function 4) (0) | 2022.08.27 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
링크