기획자의 데이터 공부 - 데이터 모델링의 이해
* 관계의 정의
- 상호 연관성이 있는 상태
- 인스턴스 사이의 논리적인 연관성으로서, 존재 또는 행위로서, 서로에게 연관성이 부여된 상태
- 엔티티 간 연관성을 표현하기 때문에 엔티티 정의에 따라 영향을 받기도 함
- 속성 정의 및 관계 정의에 따라 다양하게 변할 수 있음
* 관계의 패어링
- 패어링 : 엔티티 안에 인스턴스가 개별적으로 관계를 가지는 것
- 개별 인스턴스가 각각 다른 종류의 관계를 갖고 있으며 두 엔티티 사이에 두 개 이상 관계가 형성될 수 있음
- 관계 패어링 : 각 엔티티의 인스턴스들이 자신이 관련된 인스턴스들과 관계의 어커런스로 참여하는 형태
- 최초의 ERD에서 관계는 속성을 가질 수 있었지만 요즘 ERD에서 관계를 위해 속성을 도출하지는 않음
- 관계의 표현에는 이항관계, 삼항관계, n항관계가 존재
* 관계의 분류
- 존재에 의한 관계와 행위에 의한 관계로 구분
- UML에는 클래스다이어그램의 관계 중 연관관계 association, 의존관계 dependency가 있음
연관관계 : 항상 이용하는 관계, 존재적 관계, 실선, 소스코드에서 멤버변수로 선언하여 사용
의존관계 : 상대방 클래스의 행위에 의해 관계가 형성될 때 구분하여 표현, 점선, opertation에서 파라미터로 사용
- ERD에서는 존재적 관계와 행위에 의한 관계를 구분하지 않지만 클래스 다이어그램에서는 구분함
[본 글은 SQLD 자격증 공부를 위해 아카이빙한 글입니다.