※ 식별자 

        1. 식별자란? - 각각의 인스턴스를 구분 가능하게 만들어주는 대표격인 속성을 의미

 

        2. 주식별자

             ① 주식별자란? - 기본키(Primary Key, PK)에 해당하는 속성. 하나의 속성이 주식별자가 될 수도 있고 여러 개의 속성이 주식별자가                         될 수도 있음

             ② 주식별자 특징

                  ㉮ 유일성 - 유일하게 각 인스턴스에 유니크함을 부여하여 식별이 가능토록 함

                  ㉯ 최소성 - 주식별자를 구성하는 속성 수는 1개여야 함             

                        Ex) 학번 + 랜덤번호 X

                  ㉰ 불변성 - 속성값이 되도록 변하지 않아야 함

                  ㉱ 존재성 - 속성값이 NULL값알 수 없음

 

        3. 식별자 분류

             ① 대표성 여부

                  ㉮ 주식별자(기본키) - 엔터티를 대표하는 식별자로 다른 엔터티와 참조 관계로 연결됨

                  ㉯ 보조식별자(후보키) - 인스턴스를 식별하나 대표 식별자가 아니므로 다른 엔터티와 참조관계로 연결되지 않음

             ② 엔터티 내 생성 여부

                  ㉮ 내부식별자 - 엔터티 내부에서 스스로 생성된 식별자

                  ㉯ 외부식별자 - 다른 엔터티와의 관계를 통해 생성되는 식별자

             ③ 단일 속성의 여부

                  ㉮ 단일식별자 - 하나의 속성으로 구성된 식별자

                  ㉯ 복합식별자 - 두 개 이상의 속성으로 구성된 식별자

             ④ 대체 여부

                  ㉮ 원조식별자/본질식별자 - 업무 프로세스에 존재하는 식별자

                  ㉯ 대리식별자/인조식별자 - 주식별자의 속성이 두 개 이상인 경우 그 속성들을 하나로 묶어서 사용하는 식별자

                        Ex) 주문번호 = 순번 + 주문일자

 

        4. 식별자관계 vs. 비식별자관계

            ① 식별자관계 - 부모 엔터티의 주식별자가 자식 엔터티의 주식별자가 되는 관계. 부모 엔터티가 존재해야 자식 엔터티를 생성하며                        단일 식별자인지 복합 식별자인지에 따라 1:1관계나 1:M관계로 결정됨 

            ② 비식별자관계 - 부모 엔터티의 주식별자가 자식 엔터티의 일반 속성이 되는 관계. 일반 속성의 속성값은 NULL값을 가질 수                              있으므로 부모 엔터티가 없는 자식 엔터티 생성이 가능하고 자식 엔터티가 존재하는 상태에서 부모 엔터티가 삭제 가능. 

 

+ Recent posts