중복된 데이터를 허용하지 않는 제약
unique 제약을 걸게 되면 자동으로 unique 인덱스가 생성된다.
제약 방법 2가지
1. 테이블을 생성할때 제약을 걸면서 생성하는 방법
create table dept701
(deptno number(10),
loc varchar2(20) constraint dept701_loc_un unique,
dnamd varchar2(20));
2. 만들어진 테이블에 제약을 거는 방법
alter table dept
add constraint dept_loc_un unique(loc);
→ dept 테이블 loc 에 unique 제약을 걸었다.
alter table emp
add constraint emp_name_un unique(ename);
→ emp 테이블 ename 에 unique 제약을 걸었다.
인덱스를 생성하는 방법 2 가지 중 자동으로 생성되는것은 제약을 사용했을때이다.
primary key, unique 제약을 걸면 index 가 자동으로 생성된다.
alter table market
add constraint market_상가업소번호_pk primary key(상가업소번호);
→ 제약을 걸었다.
인덱스가 걸렸는지 확인해보았다.
→ 자동적으로 상가업소번호에 인덱스가 생성되었고,
→ 상가업소번호를 뽑을때의 실행계획을 보면 index 를 통해서 스캔되었음을 확인 할 수 있다.
- UNIQUE 제약을 걸게 되면 자동으로 unique 인덱스가 생성된다.
'Oracle > SQL' 카테고리의 다른 글
SQL (4) 제약 CHECK (0) | 2021.12.05 |
---|---|
SQL (3) 제약 NOT NULL 제약 (0) | 2021.12.05 |
SQL (1) 제약 Primary key (0) | 2021.12.05 |
SQL - FLASHBACK Transaction Query (수행된 DML문의 거꾸로 돌리는 DML 문장 출력 쿼리) (0) | 2021.12.05 |
SQL - Flashback Version Query (데이터 변경내역 이력 확인) (0) | 2021.12.05 |