Roel Notebook

2개 이상의 다중 컬럼으로 기본키(Primary Key) 지정하기

by Roel Downey

DB

728x90
반응형

ERD를 보다가 2개 이상의 컬럼이 기본키(Primary Key)로 지정된 테이블을 볼수 있었다.

 

 

그동안 테이블 설계 할 일도 없고, 기본키를 신경 쓸 일이 없어서 이론으로만 하나의 테이블에는 기본키(PK)가 하나야 라고 알고 있었다. 

맞다! 한개의 테이블은 오직 하나의 기본키(PK)를 가질 수 있다. 

 

그럼 내가 지금 보고 있는 테이블은 뭐지? 라는 생각을 했다. 

그동안 내가 잘못 이해하고 있었다. 기본키(PK)를 오직 하나의 컬럼만 설정할 수 있다는것이 오류 였다.

 

그럼 2개 이상의 다중 컬럼으로 기본키를 어떻게 지정할까? 

위와 같이 설정하면 복수개의 기본키를 만들겠다. 라는 의미가 된다.

 

그럼 한 덩어리로 어떻게 만들까? 

create table test (
    IC_CODE VARCHAR2(3) not null,
    WORK_DATE VARCHAR2(8) not null,
    SEQ_NO NUMBER(2) not null ,
    DAY_FIN_DT DATE DEFAULT SYSDATE not null,
    DAY_FIN_DIV VARCHAR2(1),
    constraint test_PK primary key (IC_CODE, WORK_DATE, SEQ_NO)
);

기본키 제약조건으로 속성들을 괄호 안에 설정해 주면 된다.

 

728x90
반응형

블로그의 정보

What doing?

Roel Downey

활동하기