4. 관계
- 정의: 엔티티 간의 논리적 관련성
- 유의점
- 두 개의 엔티티 사이에 연관 규칙이 존재하는가?
- 업무기술서, 장표에 관계 연결을 가능하게 하는 동사가 있는가?
- 업무기술서, 장표에 관계 연결 규칙이 서술되어 있는가?
- 두 개의 엔티티 사이에서 정보의 조합이 발생하는가?
- 분류
- 존재에 의한 관계: 두 개의 엔티티가 존재 여부에 대한 관계가 이루어진 상태 (ex. 부서와 사원은 소속이라는 존재 관계를 이룸)
- 행위에 의한 관계: 두 개의 엔티티가 어떤 행위의 관련성에 대해 관계가 이루어진 상태 (ex. 회원과 도서는 대출을 통해 행위 관계를 이룸)
- 표기법
- 1대 1 관계: 하나의 A 엔티티와 다른 하나의 B 엔티티는 서로가 속성 하나씩만을 가지는 관계 (ex. 한 명의 회원은 하나의 회원 번호를 가짐. 하나의 회원 번호 또한 한 명의 회원만을 가짐)
- 1대 N 관계: 하나의 A 엔티티는 다른 하나의 B 엔티티의 여러 속성을 가질 수 있고, 하나의 B 엔티티는 A 엔티티의 속성을 오직 하나만 가질 수 있는 관계 (ex. 한 명의 회원은 여러 대출 기록을 가짐. 하나의 대출 기록은 한 명의 회원만을 가짐)
- N대 N 관계: A 엔티티는 B 엔티티의 여러 속성을 가질 수 있으며, B 엔티티 또한 A 엔티티의 여러 속성을 가질 수 있는 관계 (ex. 한 명의 회원은 여러 권의 책을 대출할 수 있고, 하나의 책은 여러 회원에게 대출될 수 있음)
5. 식별자
- 정의: 하나의 엔티티에 구성되어 있는 여러 속성 중, 엔티티를 대표할 수 있는 속성
- 하나의 엔티티는 반드시 하나의 유일한 식별자가 존재해야 함
- 업무적으로 구분이 되는 정보이며, 논리 데이터 모델링 단계에서 사용됨
- 특징
- 유일성: 식별자에 의해 엔티티 내에 모든 인스턴스들은 유일하게 구분되어야 함
- 최소성: 식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야 함
- 불변성: 식별자가 한 번 지정되면 그 식별자의 값은 변하지 않아야 함
- 존재성: 식별자가 지정되면 반드시 식별자의 값이 존재해야 함
- 분류
- 대표성 여부에 따른 분류
- 주 식별자: 유일성과 최소성을 만족하면서 엔티티를 대표하는 식별자이며, 타 엔티티와 참조관계 연결 가능
- 보조 식별자: 유일성과 최소성을 만족하지만, 엔티티를 대표하지 못해 타 엔티티와 참조관계 연결 불가능
- 스스로 생성 여부에 따른 분류
- 내부 식별자: 엔티티 내부에서 스스로 만들어지는 식별자
- 외부 식별자: 타 엔티티와의 관계를 통해 타 엔티티로부터 받아오는 식별자
- 속성의 수에 따른 분류
- 단일 식별자: 하나의 속성으로 구성된 식별자
- 복합 식별자: 둘 이상의 속성으로 구성된 식별자
- 대체 여부에 따른 분류
- 본질 식별자: 업무에 의해 자연스레 만들어지는 식별자
- 인조 식별자: 업무에 의해 자연스레 만들어지지는 않지만, 원조 식별자가 복잡한 구성을 가지고 있어 인위적으로 만든 식별자
- 키
- 정의: DB 테이블에 접근을 위한 매개체로, 물리 데이터 모델링 단계에서 사용
- 종류
- 후보키: 유일성과 최소성을 만족하는 키
- 슈퍼키: 유일성은 만족하지만, 최소성을 만족하지 못하는 키
- 대체키: 후보키 중 기본키를 제외하고 남은 나머지 키
- 외래키: 다른 테이블의 기본 키 필드를 가리키며, 참조 무결성이 특징인 키
참고: https://mjn5027.tistory.com/100