데이터 모델링2010. 6. 23. 09:48
카디날리티(Cardinality)

개체-관계 다이어그램은 데이터베이스가 지켜야 할 제약 조건들을 명시할 수 있다. 중요한 제약 조건 중의 하나로 연결(Connectivity)이라는 것이 있는데, 이는 한 개체가 관계를 통하여 다른 개체 와 관련된 개체들의 수를 나타낸다. 관계의 연결은 1:1, 1:M, M:M으로 분류된다. 개체-관계 다이어 그램에서는 관계의 연결을 1, M 을 사용하여 표현하며 [그림1]의 예와 같다. 표기법에 따라서 는 M:M을 M:N으로 표현하기도 하나 여기서는 M:M으로 나타내기로 한다.


사용자 삽입 이미지

                                                                      [그림 1]

  • 일대일(One To One, 1:1) : X에 속하는 한 개체는 Y에 속하는 한 개체에만 연결되며, Y에 속하는 한 개체도 X 에 속하는 한 개체에만 연결된다.
  • 일대다(One To Many, 1:M) : X에 속하는 한 개체는 Y에 속하는 한 개체에만 연결되며, Y에 속 하는 한 개체는 X에 속하는 여러 개체들과 연결된다.
  • 다대다(Many To Many, M:M) : X에 속하는 한 개체는 Y에 속하는 여러 개체들과 연결될 수 있 으며, Y에 속하는 한 개체도 X에 속하는 여러 개체들과 연결될 수 있다.

또한 카디날리티(Cardinality)란 관계에 참여하는 하나의 개체에 대해 다른 엔터티에서 몇 개의 개체가 참여하는지를 나타낸다. 예를 들면 한 명의 학생이 1개 이상 6개 이하의 과목에 등록할 수 있 다면 카디날리티는 (1, 6)이다. 한 명의 교수는 최대 3개의 과목을 가르칠 수 있다면 카디날리티는(0, 3)이다. 카디날리티는 (Min, Max)의 한 쌍의 값으로 표현하는데 여기서 Min은 관계에 참여하는 개체의 최소 개수, Max는 관계에 참여하는 최대 개수를 각각 의미한다. 여기서 Max의 값이 M으로 표시되면 최대 개수에 제한이 없음을 의미한다. [그림 2]에서 PROFESSOR-COURSE의 관 계를 살펴보면 다음과 같이 해석할 수 있다.

사용자 삽입 이미지

                                                                       [그림 2]

1) PROFESSOR-COURSE는 1:M 관계이다.

2) PROFESSOR의 카디날리티는 (0, 3) 이다. 즉 각 교수는 3개 이하의 과목을 가르칠 수 있다.

3) COURSE의 카디날리티는 (1, 1)이다. 즉 각 과목을 가르치는 교수는 반드시 1명이어야 한다.


출처 : DB 포탈 사이트 DBguide.net
Posted by choi1779