데이터베이스의 기능적 종속성

데이터 중복 방지를위한 기능 의존성 도움말

데이터베이스의 기능적 종속성은 속성 사이에 일련의 제약 조건을 적용합니다. 이것은 관계의 한 속성이 다른 속성을 고유하게 판별 할 때 발생합니다. 이것은 "B가 기능적으로 A에 종속적 인"것을 의미하는 A -> B 로 쓸 수 있습니다. 이는 데이터베이스 종속성 이라고도합니다.

이 관계에서 A는 B의 값을 결정하고 B는 A에 의존합니다.

데이터베이스 디자인에서 기능 의존성이 중요한 이유

기능적 의존성은 데이터의 유효성을 보장하는 데 도움이됩니다. 테이블 고려 SSN (Social Security Number), 이름, 생년월일, 주소 등의 특성을 나열하는 직원.

SSN 속성은 이름, 생년월일, 주소 및 기타 값의 가치를 결정합니다. 이는 사회 보장 번호가 고유하기 때문에 이름, 생년월일 또는 주소가 고유하지 않을 수 있기 때문입니다. 우리는 다음과 같이 작성할 수 있습니다.

SSN -> 이름, 생년월일, 주소

따라서 이름, 생년월일 및 주소는 기능상 SSN에 따라 다릅니다. 그러나 둘 이상의 직원이 동일한 이름을 가질 수는 있지만 동일한 SSN을 갖지 않으므로 반대 명령문 (name -> SSN)은 사실이 아닙니다. SSN 속성의 가치를 안다면 이름, 생년월일 및 주소의 가치를 찾을 수 있습니다. 그러나 name 속성 값만 알고 있으면 SSN을 식별 할 수 없습니다.

기능 종속성의 왼쪽에는 둘 이상의 속성이 포함될 수 있습니다. 우리가 여러 지역에 사업체를 가지고 있다고 가정 해 봅시다. employee, title, department, location 및 manager 속성을 가진 Employee 테이블이있을 수 있습니다.

직원은 그가 일하는 위치를 결정하므로 종속성이 있습니다.

직원 -> 위치

그러나 위치에 관리자가 둘 이상있을 수 있으므로 직원과 부서가 함께 관리자를 결정합니다.

직원, 부서 -> 관리자

기능 종속성 및 정규화

기능적 종속성은 데이터베이스 무결성을 보장하고 데이터 중복을 줄이는 데이터베이스 정규화에 기여합니다. 정규화가 없으면 데이터베이스의 데이터가 정확하고 신뢰할 수 있다는 보장이 없습니다.