데이터베이스 카디널리티

IT위키

Cardinality

카디널리티는 두 엔티티 간의 최대 연관성을 나타내며, 한 엔티티의 인스턴스가 다른 엔티티의 인스턴스와 맺을 수 있는 관계의 개수를 정의한다. 이는 관계의 최대 값을 의미한다.

종류[편집 | 원본 편집]

주로 아래 중 하나로 정의된다.

  • 1:1 (일대일)
  • 1:N (일대다, 다대일)
  • N:M (다대다)

예시[편집 | 원본 편집]

  • 1:1 관계: 한 엔티티의 인스턴스가 다른 엔티티의 인스턴스와 단 하나의 관계를 맺을 때
    • 예시: 사원(Employee)와 사원증(Employee ID) 간의 관계.
      • 한 사원은 하나의 사원증만 가질 수 있고, 사원증은 한 명의 사원에게만 발급된다.
  • 1:N 관계: 한 엔티티의 인스턴스가 여러 다른 엔티티의 인스턴스와 관계를 맺을 때
    • 예시: 교수(Professor)와 학생(Student) 간의 관계
      • 한 명의 교수는 여러 명의 학생을 지도할 수 있지만, 학생은 한 명의 교수에게 지도받는다.
  • N: M 관계: 여러 엔티티의 인스턴스들이 서로 다수의 관계를 맺을 때
    • 예시: 학생(Student)과 강좌(Course) 간의 관계
      • 한 명의 학생은 여러 강좌를 수강할 수 있고, 한 강좌에는 여러 학생이 수강할 수 있다.

최소 카디널리티[편집 | 원본 편집]

Minimum Cardinality

최소 카디널리티는 관계에서 최소 몇 개의 인스턴스가 반드시 연결되어야 하는지를 나타낸다. 이는 각 엔티티가 관계에 필수적으로 참여하는지 아니면 선택적으로 참여하는지를 결정하는 요소이다.

  • 0 (Optional Participation, 선택적 참여): 엔티티가 관계에 참여하지 않아도 된다.
    • 예시: 사원은 필수로 부서에 속할 필요가 없다.
  • 1 (Mandatory Participation, 필수적 참여): 엔티티는 반드시 관계에 참여해야 한다.
    • 예시: 학생은 반드시 한 명의 지도 교수에게 할당되어야 한다.

최소, 최대 카디널리티가 가지는 의미[편집 | 원본 편집]

  • 교수(1)와 학생(N) 간의 관계에서 최소 카디널리티가 교수에 대해 1이라면, 한 명의 교수가 반드시 한 명 이상의 학생을 지도해야 한다는 의미이다.
  • 학생의 최소 카디널리티가 0이라면, 학생은 지도 교수가 없어도 되지만, 최대 카디널리티가 1이라면 한 명의 교수에게만 지도받을 수 있다는 의미다.