반응형
이 게시물은 Database GUI Oracle SQL Developer의 아래 버전 정보를 기준으로 작성되었습니다. Java(TM) 플랫폼 : 1.8.0_321 Oracle IDE : 4.1.5.21.78 |
UNIQUE
설명
열에 저장할 데이터의 중복을 허용하지 않고자 할 때 사용하는 제약 조건. UNIQUE 제약 조건은 중복되는 값은 허용하지 않지만 NULL 저장은 가능하다.
NULL은 존재하지 않거나 해당 사항이 없다는 의미로 사용되는 특수한 값이므로 NULL에 데이터 중복의 의미를 부여할 수 없다.
사용 예시
-- COL_IDX열에 UNIQUE 제약 조건을 설정하여 테이블 생성
CREATE TABLE TB_UNIQUE(
COL_IDX NUMBER(3) UNIQUE,
COL_NAME VARCHAR2(20) NOT NULL
);
INSERT INTO TB_UNIQUE(COL_IDX, COL_NAME)
VALUES (101, 'GSP');
INSERT INTO TB_UNIQUE(COL_IDX, COL_NAME)
VALUES (102, '손준오');
INSERT INTO TB_UNIQUE(COL_IDX, COL_NAME)
VALUES (103, '박민규');
INSERT INTO TB_UNIQUE(COL_IDX, COL_NAME)
VALUES (104, '신정훈');
SELECT * FROM TB_UNIQUE;
-- 중복되는 COL_IDX 101로 INSERT 실행
INSERT INTO TB_UNIQUE(COL_IDX, COL_NAME)
VALUES (101, '강재석');
-- 중복되는 COL_IDX 101로 UPDATE 실행
UPDATE TB_UNIQUE
SET COL_IDX = 101
WHERE COL_NAME = '박민규';
중복되는 데이터 INSERT 및 UPDATE 시 UNIQUE 제약 조건에 의해 오류 발생
반응형
'개발 지식 > [DBMS] Oracle' 카테고리의 다른 글
[Oracle] 제약 조건(4) - 외래 키(FOREIGN KEY) (0) | 2022.06.26 |
---|---|
[Oracle] 제약 조건(3) - 기본 키(PRIMARY KEY) (0) | 2022.06.25 |
[Oracle] 제약 조건(1) - 제약 조건(CONSTRAINT) 제어, NOT NULL (0) | 2022.06.23 |
[Oracle] DDL(8) - 시퀀스(SEQUENCE) (0) | 2022.06.22 |
[Oracle] DDL(7) - 시노님(SYNONYM) (0) | 2022.06.21 |