DB모델링 - 식별자, 속성
식별자 (Identifier)
식별자란 하나의 엔터티 내에서 각각의 인스턴스를 유일(Unique)하게 구분해낼 수 있는 속성 또는 속성 그룹.
하나의 엔터티는 하나 이상의 식별자를 반드시 보유하고 있어야만 한다.
식별자의 유형
주식별자 / 보조식별자 : 대표성 여부
- 후보식별자 : 하나의 엔터티 내에서 식별자로 사용할 수 있는 하나 이상의 키
- 주식별자 : 엔터티의 대표성을 나타내는 유일한 식별자. PK Index로 생성
- 보조식별자 : 주식별자를 대신하여 데이터를 식별하는 식별자. Unique Index로 생성.
주 식별자를 구성하는 속성이 많을 경우 대리식별자를 생성하고, 실제 식별자를 보조식별자로 정의.
예 ) 사원 Entity
: 후보식별자 - 사번, 주민번호
주식별자 - 사번
보조식별자 - 주민번호
내부식별자 / 외부식별자 : 스스로 생성 여부
- 내부식별자 : 자신의 엔터티 내에서 스스로 생성되어 존재하는 식별자
- 외부식별자 : 다른 엔터티로부터 관계에 의해 주식별자 속성을 상속받아 자신의 속성에 포함되는 식별자. (=FK)
단일식별자 / 복합식별자 : 단일속성여부
- 복합식별자의 경우 우선순위가 매우 중요하다.
원조식별자( = 본질식별자) / 인조식별자
- 여러개의 본질식별자로 이루어진 복합 식별자를 PK로 사용할 경우,
하나의 인조식별자를 대리식별자로 생성할 수 있다.
대리식별자( = 대체키 Alternate Key)
- 주식별자의 속성이 복합식별자일 경우 여러개의 속성을 묶어 하나의 속성으로 만들어 주식별자로 활용했을 때,
기존의 주식별자 속성들은 대리식별자가 된다.
엔터티 내에서 PK는 하나만 지정할 수 있다.
PK 외의 유일한 키는 대체키(Alternate Key)로 지정한다
속성 (Attribute)
속성의 유형
- 기본 속성
- 설계 속성
: 원래 업무에는 존재하지 않지만 시스템 효율성 위해 임의로 추가되는 속성 ( 코드, 일련번호 등) - 파생 속성( = 추출 속성 , 유도 속성 )
: 다른 속성으로부터 계산이나 변형되어 생성되는 속성
데이터 중복성 및 무결성 확보 위해 가급적 적게 정의
( >> Trigger이용, Computed column(계산된 컬럼) 선언
파생속성
- 성능은 향상될 수 있으나, 나중에 관련 속성에 변경이 생길 경우 무결성 문제가 발생할 수 있다.
- 데이터 모델에서는 표현하지 않는다. (정의서에 기술함. 파생속성은 데이터간의 관계가 아니다.)
Author And Source
이 문제에 관하여(DB모델링 - 식별자, 속성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@mindddi/DB모델링-식별자-속성저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)