"식별자"라는 것은 엔터티를 대표할 수 있는 유일성을 만족하는 속성이다.
일반적으로 회원ID, 계좌번호, 주민등록번호, 외국인등록번호, 여권번호 등이 있다.
데이터베이스 키 | 설명 |
---|---|
기본 키(Primary Key) | 후보키 중에서 엔터티를 대표할 수 있는 키이다. |
후보 키(Candidate Key) | 후보키는 유일성과 최소성을 만족하는 키이다. |
슈퍼 키(Super Key) | 슈퍼키는 유일성은 만족하지만, 최소성을 만족하지 않는 키이다. |
대체 키(Alternate Key) | 대체키는 여러 개의 후보키 중에서 기본키를 선정하고 남은 키이다. |
외래 키(Foreign Key) | 하나 혹은 다수의 다른 테이블의 기본 키 필드를 가리키는 것으로 참조 무결성을 확인하기 위해서 사용되는 키이다. |
즉, 허용된 데이터 값만 데이터베이스에 저장하기 위해 사용된다. |
"식별자"는 대표성, 생성 여부, 속성의 수, 대체 여부로 분류된다.
주식별자는 엔터티를 대표할 수 있는 식별자이다.
예를 들어 회원ID는 고객 엔터티에 주식별자가 된다.
대표성 여부에 따른 식별자의 종류
종류 | 설명 |
---|---|
주 식별자 | 유일성과 최소성을 만족하면서 엔터티를 대표하는 식별자이다. |
다른 엔터티와 참조 관계로 연결될 수 있다. | |
보조 식별자 | 유일성과 최소성은 만족하지만 대표성을 만족하지 못하는 식별자이다. |
생성 여부에 따른 식별자의 종류
종류 | 설명 |
---|---|
내부 식별자 | 내부 식별자는 엔터티 내부에서 스스로 생성되는 식별자이다. |
ex) 부서코드, 주문번호, 종목코드 등 | |
외부 식별자 | 다른 엔터티와의 관계로 인하여 만들어지는 식별자이다. |
ex) 계좌 엔터티에 회원ID |
속성의 수에 따른 식별자의 종류
종류 | 설명 |
---|---|
단일 식별자 | 하나의 속성으로 구성된다. |
ex) 고객 엔터티에 회원ID | |
복합 식별자 | 두 개 이상의 속성으로 구성된다. |
대체 여부에 따른 식별자의 종류
종류 | 설명 |
---|---|
본질 식별자 | 비즈니스 프로세스에서 만들어지는 식별자이다. |
인조 식별자 | 인위적으로 만들어지는 식별자이다. |