1. 테이블 생성
2. 테이블 삭제
3. INSERT
4. 테이블에 NULL 데이터 입력
- NULL의 명시적 입력
- NULL의 암시적 입력
5. 테이블 데이터 수정하기
6. 수정한 내용을 되돌리고 싶을 때
7. 데이터 전체 수정 / 일부분 수정
8. 테이블 삭제
- 트랜잭션(transaction) : 더 이상 분할할 수 없는 최소 수행 단위
- 세션(session) : 데이터베이스 접속을 시작으로 여러 데이터베이스에서 고나련 작업을 수행한후 접속을 종료하기까지 전체기간을 의미
- 읽기 일관성의 중요성 : 어떤 특정 세션에서 테이블의 데이터를 변경 중일 때 그 외 다른 세션에서는 데이터의 변경이 확정되기 전까지 변경 사항을 알 피룡가 없으므로, 데이터를 변경 중인 세션을 제외한 나머지 세션에서는 현재 진행 중인 변경과 무관한 본래의 데이터를 보여주는 특성을 의미
1. DataGrip 같은경우 autoCommit이 자동으로 활성화되어있으므로 이번 세션 테스트하기 위해서는 flase로 변경한다.
세션 테스트 끝난후 true로 다시 변경한다.
2. DataGrip 쪽에서 UPDATE후 SELECT 하면 아래와같이 변경된값을 볼수있지만 PowerShell 쪽은 변경되지 않았습니다.
이 뜻은 세션이 2개 연결되어있지만 Commit을 하지 않는이상 데이터 서로 다를수있다는 것입니다.
3. DataGrip Commit 이후에는 Powershell 결과와 동일합니다.
즉, 데이터 조작이 포함된 트랜젝션이 완료(commit, rollback)되기 전까지 데이터를 직접 조작하는 세션 외 다른 세션에서는 데이터 조작 전상태의 내용이 일관적으로 조회,출력,검색되는 특성을 '일관 일관성(read consistency)'이라고 한다.
만약 세션A가 DEPTNO 50 행 작업중 다른 B세션이 DEPTNO=50을 접근하면 앞서했던 세션A 작업이 끝날때까지 기다린다. 이것을 HANG(행)이라고 부른다.
'DB > 오라클(Oracle) 입문' 카테고리의 다른 글
오라클 설치없이 쿼리 연습하는 사이트 목록 (0) | 2019.04.20 |
---|---|
서브쿼리 (0) | 2019.04.01 |
조인종류 & SQL-99 표준문법 (0) | 2019.04.01 |
데이터 그룹화2(LISTAGG, PIVOT, UNPIVOT) (0) | 2019.03.31 |
다중행 함수와 데이터 그룹화1 (0) | 2019.03.31 |