- 오라클 객체
- VIEW
- 가상의 테이블
- 필요한 정보가 여러 테이블에 분산 저장되어있어 자주 조인이 발생되는 경우
- 테이블 중 일부 칼럼이나 행만 요구되는 경우
- 특정 테이블의 접근을 제한하고 결과만 제공하는 경우
- VIEW가 바뀌면 원본도 같이 바뀌기 때문에 이러한 상황을 원치 않는다면 READ ONLY를 작성해 줘야 한다
-
CREATE [OR REPLACE] VIEW 뷰이름[(컬럼 리스트)] AS SELECT 문 [WITH CHECK OPTION] [WITH READ ONLY]
- SEQUENCE
- 자동적으로 증가 또는 감소되는 번호를 생성
- 테이블과 독립적 사용
- 테이블에 기본키로 사용된 적당한 칼럼이 없는 경우 기본키로 사용될 수 있음(게시판 글 번호 등)
-
CREATE SEQUENCE 시퀀스명 [START WITH n] 시작값(생략되면 MINCALUE) [INCREMENT BY n] 증감 값 (DEFAULT 1) [MAXVALUE n|NOMAXVALUE] 최대값(DEFAULT NOMAXVALUE(10^27)) [MINVALUE n|NOMINVALUE] 최솟값(DEFAULT MOMINVALUE(1)) [CYCLE|NOCYCLE] 최대(최소)걊 도달 후 다시 시퀀스 생성 여부(기본값 NOCYCLE) [CACHE n|NOCACHE] 메모리에 미리 시퀀스 생성저장 후 사용(기본값 CACHE 20) [ORDER|NOORDER] 요청한 대로 생성 보장 (기본값 NOORDER)
- 시퀀스 값 참조
-
시퀀스명.CURRVAL : 시퀀스의 현재값 반환 시퀀스명.NEXTVAL : 시퀀스의 다음값 반환 해당 세션에서 시퀀스 생성 후 첫 번째 명령은 반드시 시퀀스명.NEXTVAL이어야함 시퀀스명.CURRVAL은 시퀀스명.NEXTVAL가 한번은 수행된 후 값 참조 가능
- SYNONYM
- 동의어
- 오라클에서 사용된 모든 객체를 대상으로 별칭을 부여
- 긴 테이블명 등에 대한 단축어 기능 제공
- 칼럼의 별칭이나 FROM절에 사용되는 테이블의 별칭과의 차이점은 적용 범위에 있다
-
CREATE [OR REPLACE] SYNONYM 동의어명 FOR 원본 객체명
- INDEX
- 데이터 검색의 효율성을 증가시키기 위하여 사용
- DB Server의 성능 개선
- 인덱스를 관리하는데 시간이 오래 걸릴 수도 있으므로 조심해서 사용한다
- 인덱스가 요구되는 칼럼
- 검색이 빈번히 사용되는 칼럼
- 기본키와 외래 키
- SORT나 JOIN에 사용되는 칼럼
- WHERE절의 조건에 '='연산자가 사용된 경우와 범위를 정하여 비교하는 경우
- 인덱스가 불필요한 칼럼
- 칼럼 도메인 작은 칼럼(성별, 학년 등)
- 검색(select)보다 INSERT, UPDATE, DELETE 등의 명령이 더 중요한 경우
- 검색 결과 대부분의 자료가 반환된 조건에 사용되는 칼럼
- 인덱스 종류
- Unique/Non-Unique
- 중복 값의 허용 여부에 따른 분류, Null 값은 허용되나 Unique Index에서 한 번만 허용(단, 기본키 인덱스에서는 Null불허용)
- Normal Index
- default 인덱스
- 칼럼 값과 rowid(물리적 위치정보)를 조합 사용하여 자료 저장
- 2진 트리구조 사용으로 각 노드의 평균 검색시간이 동일
- Bitmap Index
- Cardinality가 적은 경우 효율적이고 삽입/삭제/수정이 빈번히 발생되는 경우 비효율적
- 칼럼과 rowid를 이진으로 조합하여 사용
- Function-Based Normal Index
- where절에 함수가 사용되어 검색하는 경우가 많이 발생하는 경우 함수가 사용된 칼럼의 값을 기반으로 인덱스 생성
- Unique/Non-Unique
- 인덱스 재구성
- 인덱스나 테이블을 다른 테이블 저장공간(테이블스페이스)으로 이동시킨 후 삽입/삭제 동작이 많이 발생된 경우
-
ALTER INDEX 인덱스명 REBUILD
- 인덱스가 요구되는 칼럼
- VIEW
-
CREATE [ UNIQUE | BITMAP ] INDEX 인덱스명 ON 테이블명(컬럼명[, 컬럼명, ...]) [ASC|DESC]
'DataBase > Oracle' 카테고리의 다른 글
오라클 데이터 delete시 복구 방법 (0) | 2021.11.09 |
---|---|
17. 집합연산자 (0) | 2021.07.24 |
16. 서브쿼리 (0) | 2021.07.24 |
15. Join - 외부조인 (0) | 2021.07.24 |
14. Join - 내부조인 (0) | 2021.07.24 |