현재까지 오라클의 테이블, 뷰,트랜잭션을 기록하였다. 오라클의 2/3는 대략 저장하였다고 봐도 무방하다. 아닐수도있다 오라클은 광범위 하기때문에 하지만 내가 필요한 오라클의 정보의 2/3는 모두 기록하였다고 봐도 괜찮을것같다는 의미이다. 이제 남은건, **인덱스, 시컨스**, 동의어(synonym)이 남아있는 상태이다.
인덱스 (index) _
책갈피와 비슷한 역할이다. 자주사용이 되는 컬럼에 부여를 하는것이다. 즉 자주 검색이 되는 필드에 부여를 한다. (검색목적) => where 조건식에 언급되는 것! 그리고 검색 속도가 빠른이유로는 컴퓨터는 인덱스가 부여된 필드먼저 찾아준다. 그리고 데이터의 저장공간이 따로 필요하다. 사용 되는 목적은 검색 속도를 향상시키기 위해 사용된다. 아래와 같이 요약을 할 수가 있다.
- 인덱스가 부여된 필드 먼저 찾아주기에 검색속도가 빠르다. 즉 [빠르게 찾기 위해서,인덱스 존재 이유] <= 장점
- 데이터 저장공간이 따로 필요하다, 인덱스를 생성하는데 시간이 소요된다 <= 단점
참고 사항_
primary key(기본키) 이것은 not null + unique 키가 부여된다. 여기서 unique키는 인덱스와 동일하다. 프라이머리키를 부여하는것은 unique index가 자동으로 부여가 되는것이다.
인덱스의 종류_
1. unique index키
프라이머리 키를 부여하면 자동으로 생성이 되는것임. 하지만 본 게시글에서 말하는 인덱스 키는 아래 2. non-unique index 키를 말하고자 하는것이다.
2. non-unique index키 ** 본 게시글의 주제 **
해당 키는 중복을 허용해주는 필드에 부여한다. 예를 들어 중복이 되는 직책, 성별, 이름, 상품명 등 중복되는 필드를 검색할때 인덱스 키를 넣어 보다 빠르게 검색을 하고자 하는것이다.
**중요**
주의할점_
수정이 자주되는 필드에 인덱스키를 부여하면 안된다. 이유는 바뀔때마다, 인덱스 키를 변경해줘야하기에 속도가 느려질 가능성이 매우 높다. 안하느니만 못하다는 이야기이다.
즉 자주 검색을하며, 자주 변경이 안되는 필드에 지정을 한다면 효율을 굉장히 높일수 있는 방식이다.
보통 이름, 상품 등 과같이 현실에서 변경하기 까다로운 필드에 적용을 하도록 기억하자.
**중요**
'Oracle > Index, Sequence, Synonym' 카테고리의 다른 글
데이터 베이스_ 오라클 [Sequence] 활용 2 currval, nextval (0) | 2019.07.03 |
---|---|
데이터 베이스_ 오라클 [Sequence] 활용 1 currval, nextval (0) | 2019.07.03 |
데이터 베이스_ 오라클 [Sequence] 개요 (0) | 2019.07.03 |
데이터 베이스_ 오라클 [INDEX] 활용2 인덱스 삭제 (0) | 2019.07.03 |
데이터 베이스_ 오라클 [INDEX] 활용 1 (0) | 2019.07.03 |
댓글