이유's Programming/DBMS

1-4. 관계, 식별자

살아가는 이유_EU 2021. 3. 5. 11:18
728x90
반응형

그 전에 알아볼 데이터 모델링 

데이터 모델링의 중요한 세 가지 개념 

 

1) 업무가 관여하는 어떤 것 ( Things ) 

--> 이는 엔터티 

ERD 를 그릴 때.. -> 엔터티를 배치하는 것도 중요한데 가장 중요한 엔터티를 왼쪽 상단에 배치 

 

2) 어떤 것이 가지는 성격 ( Attributes) 

-> 속성 / 세부적인 사항 등.. 

 

3) 업무가 관여하는 어떤 것의 관계 ( Relationship) 

-> 관계 

 

여기 안에서 중요한 것 먼저 고려해야 하는 사항은 먼저 엔터티, 속성, 관계로 인식되어야하는데 저희가 알아볼 부분은 여기서 관계입니다. 

 

 

1. 관계의 개념

- 인스턴스 사이의 논리적인 연관성으로서 존재 또는 행위로서 서로에게 연관성이 부여된 상태 

- e.x) 강사가 수강생을 가르친다. 

- 인스턴스는 각각은 자신의 연관성을 가지고 있을 수 있다. 이것을 집합하여 '강의' 라는 관계를 도출 

각 강사가 여러 수강생을 가르칠 수 있고 다른 강사는 또 박혜수라는 학생을 가르칠 수 있듯이. 

 

 

2. 관계의 분류

- 존재에 의한 관계

- 행위에 의한 관계 

 

3. 관계 표기명

- 관계 차수 : 두 개의 엔터티 간 관계에서 참여자의 수를 표현하는 것을 관계차수 

 

 

4. 식별자 

- 하나의 엔터티에 구성된 여러 개의 속성 중에 엔터티를 대표할 수 있는 속성 

- 주식별자인지 아니면 외부식별자 

- 식별자의 특성 : 유일성 / 최소성 / 불변성 / 존재성 

 

- 식별자 관계와 비식별자관계의 결정 

* 외부 식별자는 자기 자신의 엔터티에서 필요한 속성이 아니라 다른 엔터티의 관계를 통해 자식 쪽에 엔터티에 생성되는 속성에 대해서 보기. 

 

식별자와 비식별자

- 비식별자관계로만 설정할 경우의 문제점

- 식별과 비식별을 잘 구분해서 써야 좋은 데이터 모델링을 할 수 있음.  

 

- 주식별자 : 인스턴스의 유일성을 가질 수 있도록 하는 식별자 / PK 

- 외부 식별자 : 자기 자신의 엔터티타입에 필요한 속성이 아니라 다른 엔터티의 관계를 설명하기 위해 쓰이는 식별자 

         FK 로 생각하면 편함. 

- 약간 부모 엔터티와 자식 엔터티 가 있으면 부모의 식별자가 자식의 식별자에 어떻게 가는지.. 

- 보조 식별자 : 

 

 

 

식별자의 분리 체계 

* 대표성 여부 : 주식별자 <---> 보조식별자

* 스스로 생성 여부 : 내부 식별자 <---> 외부식별자

* 속성수 : 단일식별자  <---> 복합식별자

* 대체 여부 : 본질식별자 <---> 인조식별자 

728x90
반응형