Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

DBMS의 다중값 종속성

<시간/>

다중 값 종속성이란 무엇입니까?

테이블에 하나 이상의 행이 있다는 것이 동일한 테이블에 하나 이상의 다른 행을 의미하는 경우 다중값 종속성이 발생합니다.

테이블에 속성 P, Q 및 R이 있는 경우 Q 및 R은 P의 다중 값 팩트입니다.

이중 화살표 −

로 표시됩니다.
->->


우리의 예:

P->->Q
P->->R


위의 경우 다중값 종속성은 Q와 R이 독립적인 속성인 경우에만 존재합니다.

다중값 종속성이 있는 테이블은 4NF를 위반합니다.

예를 살펴보겠습니다 &mins;

<학생>

학생 이름
과정 규율
활동
아미트
수학
노래
아미트
수학
댄스
유브라지
컴퓨터
크리켓
아카시
문학
댄스
아카시
문학
크리켓
아카시
문학
노래


위의 표에서 Amit 학생을 볼 수 있습니다. 및 아카시 하나 이상의 활동에 관심이 있습니다.

CourseDiscipline 때문에 이것은 다중값 종속성입니다. 학생의 활동은 독립적이지만 학생에 따라 다릅니다.

따라서 다중값 종속성 -

StudentName ->-> 코스 규율
StudentName ->-> 활동


위의 관계는 정규화의 제4정규형에 위배됩니다.

이를 수정하려면 테이블을 두 개의 개별 테이블로 나누고 다중값 종속성을 깨십시오.

<학생 과정>

학생 이름
과정 규율
아미트
수학
아미트
수학
유브라지
컴퓨터
아카시
문학
아카시
문학
아카시
문학


<학생 활동>

학생 이름
활동
아미트
노래
아미트
댄스
유브라지
크리켓
아카시
댄스
아카시
크리켓
아카시
노래


이것은 다중값 종속성을 깨고 이제 두 가지 기능적 종속성을 갖게 됩니다.

StudentName -> 코스 규율
학생 이름 -> 활동