DML : 데이터 조작어(DATA MANIPULATION LANGUAGE)
DDL : DATA DEFINITION LANGUAGE
DCL : DATA CONTORL LANGUAGE
TCL : TRANSACTION CONTROL LANGUAGE
'================='
DML(INSERT, UPDATE, DELETE, SELECT) 명령어는 조작하는 테이블을 메모리 버퍼에 올려두고 작업을 한다.
버퍼에서 처리한 DML 명령어가 실제 테이블에 반영되기 위해서는 COMMIT을 입력해 TRANSACTION을 종료해야 한다.
해당 테이블에 데이터 변경을 발생시키는 작업 수행 시, 데이터의 무결성을 보장하는 것이 COMMIT, ROLLBACK의 역할
'================'
11장. 트랜잭션 제어와 세션
(트랜잭션개념/COMMIT,ROLLBACK사용결과/세션의 의미와 트렌젝션 관계/ROCK의 의미)
1) 트랜잭션 개념/필요성 : 두개의 실행 UPDATE가 있을 때 하나가 오류났을 때 다른 하나가 작동못하게 막기 -> 데이터 전송에서의 손실 방지
♥사전적 정의♥
: 더 이상 분할 할 수 없는 최소 수행 단위를 뜻하며, 계좌 이체와 같이 하나의 작업 또는 밀접하게 연관된 작업을 수행하기 위해 한 개 이상의 데이터 조작 명령어(DML)로 이루어진것. 어떤 기능 한가지를 수행하는 SQL문 덩어리
2)트랜젝션 묶여있는 DML상태(2가지만 가능)
3) ROLLBACK : 트랜젝션의 취소
4) COMMIT : 영원히 반영하고 싶을 때(생성시 취소/삭제 불가능이다)
5) 세션 : 어떤 활동을 위한 시간이나 기간
IN ORACLE : 데이터베이스 접속을 시작으로 여러 데이터베이스에서 관련 작업을 수행 한 후 접속을 종료하기까지 전체 기간을 의미
※ 세션>트랜젝션
6) 읽기 일관성(READ CONSISTENCY)
: 데이터 조작이 포함된 트랜젝션이 완료(COMMIT/ROLLBACK)되기 전 데이터를 직접 조작하는 세션 외 다른 세션에서는 데이터의 조작 전 내용이 일관적으로 조회/출력/검색되는 특성
7) ROCK : 수정 중인 데이터의 접근을 막는다
HANG : 특정 세션에서 데이터 조작이 완료될 때까지 다른 세션에서 해당 데이터 조작을 기다리는 현상
15장(사용자생성)
ttps://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/CREATE-USER.html#GUID-F0246961-558F-480B-AC0F-14B50134621C