logo

기능적 의존성

기능적 종속성은 두 속성 사이에 존재하는 관계입니다. 일반적으로 테이블 내의 기본 키와 키가 아닌 속성 사이에 존재합니다.

 X → Y 

FD의 왼쪽은 행렬식, 오른쪽은 종속변수로 알려져 있습니다.

예를 들어:

Emp_Id, Emp_Name, Emp_Address 속성을 가진 직원 테이블이 있다고 가정합니다.

자바 배열의 len

여기서 Emp_Id 속성은 직원 테이블의 Emp_Name 속성을 고유하게 식별할 수 있습니다. Emp_Id를 알고 있으면 이와 연관된 직원 이름을 알 수 있기 때문입니다.

기능적 종속성은 다음과 같이 작성할 수 있습니다.

 Emp_Id → Emp_Name 

Emp_Name은 기능적으로 Emp_Id에 종속되어 있다고 말할 수 있습니다.

기능적 종속성의 유형


DBMS 기능 종속성

1. 사소한 기능적 의존성

  • B가 A의 하위 집합인 경우 A → B는 사소한 기능적 종속성을 갖습니다.
  • 다음 종속성도 A → A, B → B와 같이 사소합니다.

예:

 Consider a table with two columns Employee_Id and Employee_Name. {Employee_id, Employee_Name} → Employee_Id is a trivial functional dependency as Employee_Id is a subset of {Employee_Id, Employee_Name}. Also, Employee_Id → Employee_Id and Employee_Name → Employee_Name are trivial dependencies too. 

2. 중요하지 않은 기능적 의존성

  • B가 A의 하위 집합이 아닌 경우 A → B는 중요한 기능적 종속성을 갖습니다.
  • A 교차점 B가 NULL인 경우 A → B는 완전하고 사소한 것으로 호출됩니다.

예:

 ID → Name, Name → DOB