[SQLD] 1_데이터 모델링의 이해(3)

잠이보약·2023년 8월 27일

자격증

목록 보기
3/7

4. 관계

  1. 정의: 엔티티 간의 논리적 관련성
  2. 유의점
    1. 두 개의 엔티티 사이에 연관 규칙이 존재하는가?
    2. 업무기술서, 장표에 관계 연결을 가능하게 하는 동사가 있는가?
    3. 업무기술서, 장표에 관계 연결 규칙이 서술되어 있는가?
    4. 두 개의 엔티티 사이에서 정보의 조합이 발생하는가?
  3. 분류
    1. 존재에 의한 관계: 두 개의 엔티티가 존재 여부에 대한 관계가 이루어진 상태 (ex. 부서와 사원은 소속이라는 존재 관계를 이룸)
    2. 행위에 의한 관계: 두 개의 엔티티가 어떤 행위의 관련성에 대해 관계가 이루어진 상태 (ex. 회원과 도서는 대출을 통해 행위 관계를 이룸)
  4. 표기법
    1. 1대 1 관계: 하나의 A 엔티티와 다른 하나의 B 엔티티는 서로가 속성 하나씩만을 가지는 관계 (ex. 한 명의 회원은 하나의 회원 번호를 가짐. 하나의 회원 번호 또한 한 명의 회원만을 가짐)
    2. 1대 N 관계: 하나의 A 엔티티는 다른 하나의 B 엔티티의 여러 속성을 가질 수 있고, 하나의 B 엔티티는 A 엔티티의 속성을 오직 하나만 가질 수 있는 관계 (ex. 한 명의 회원은 여러 대출 기록을 가짐. 하나의 대출 기록은 한 명의 회원만을 가짐)
    3. N대 N 관계: A 엔티티는 B 엔티티의 여러 속성을 가질 수 있으며, B 엔티티 또한 A 엔티티의 여러 속성을 가질 수 있는 관계 (ex. 한 명의 회원은 여러 권의 책을 대출할 수 있고, 하나의 책은 여러 회원에게 대출될 수 있음)

5. 식별자

  1. 정의: 하나의 엔티티에 구성되어 있는 여러 속성 중, 엔티티를 대표할 수 있는 속성
    1. 하나의 엔티티는 반드시 하나의 유일한 식별자가 존재해야 함
    2. 업무적으로 구분이 되는 정보이며, 논리 데이터 모델링 단계에서 사용됨
  2. 특징
    1. 유일성: 식별자에 의해 엔티티 내에 모든 인스턴스들은 유일하게 구분되어야 함
    2. 최소성: 식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야 함
    3. 불변성: 식별자가 한 번 지정되면 그 식별자의 값은 변하지 않아야 함
    4. 존재성: 식별자가 지정되면 반드시 식별자의 값이 존재해야 함
  3. 분류
    1. 대표성 여부에 따른 분류
      • 주 식별자: 유일성과 최소성을 만족하면서 엔티티를 대표하는 식별자이며, 타 엔티티와 참조관계 연결 가능
      • 보조 식별자: 유일성과 최소성을 만족하지만, 엔티티를 대표하지 못해 타 엔티티와 참조관계 연결 불가능
    2. 스스로 생성 여부에 따른 분류
      • 내부 식별자: 엔티티 내부에서 스스로 만들어지는 식별자
      • 외부 식별자: 타 엔티티와의 관계를 통해 타 엔티티로부터 받아오는 식별자
    3. 속성의 수에 따른 분류
      • 단일 식별자: 하나의 속성으로 구성된 식별자
      • 복합 식별자: 둘 이상의 속성으로 구성된 식별자
    4. 대체 여부에 따른 분류
      • 본질 식별자: 업무에 의해 자연스레 만들어지는 식별자
      • 인조 식별자: 업무에 의해 자연스레 만들어지지는 않지만, 원조 식별자가 복잡한 구성을 가지고 있어 인위적으로 만든 식별자
    1. 정의: DB 테이블에 접근을 위한 매개체로, 물리 데이터 모델링 단계에서 사용
    2. 종류
      • 후보키: 유일성과 최소성을 만족하는 키
      • 슈퍼키: 유일성은 만족하지만, 최소성을 만족하지 못하는 키
      • 대체키: 후보키 중 기본키를 제외하고 남은 나머지 키
      • 외래키: 다른 테이블의 기본 키 필드를 가리키며, 참조 무결성이 특징인 키

참고: https://mjn5027.tistory.com/100

profile
백엔드 개발자 지망생

0개의 댓글