Skip to main content

데이터베이스 종속성에 대한 이해 안내서

97% Owned - Economic Truth documentary - How is Money Created (유월 2025)

97% Owned - Economic Truth documentary - How is Money Created (유월 2025)
Anonim

종속성은 속성 간의 관계에 적용되거나 정의되는 제한 사항입니다. 같은 데이터베이스 테이블에 저장된 정보가 동일한 테이블에 저장된 다른 정보를 고유하게 결정할 때 데이터베이스에서 발생합니다. 또한 하나의 속성 (또는 속성 세트)의 값이 동일한 테이블의 다른 속성 (또는 속성 세트)의 값을 알기에 충분하다는 것을 아는 관계로 설명 할 수 있습니다.

데이터베이스 의존성은 종종 학생과 데이터베이스 전문가 모두에게 혼동을줍니다. 다행히도, 그들은 복잡해 보이지는 않습니다. 몇 가지 예를 사용하여 가장 잘 설명 할 수 있습니다. 여기서는 일반적인 데이터베이스 종속성 유형을 검토합니다.

데이터베이스 종속성 및 기능 종속성

테이블의 속성들 사이에 의존성이 있다고 말하는 것은 그 속성 들간에 기능적 의존성이 있다고 말하는 것과 같습니다. 속성 B가 속성 A에 종속되도록 데이터베이스에 종속성이있는 경우 다음과 같이 작성합니다.

A -> B

예를 들어 사회 보장 번호 (SSN)와 이름을 비롯한 직원 특성을 나열한 표에서 직원 이름이 SSN에서 고유하게 결정될 수 있기 때문에 이름이 SSN (또는 SSN -> 이름)에 의존한다고 할 수 있습니다. 그러나 둘 이상의 직원이 같은 이름을 가질 수는 있지만 항상 다른 SSN을 가짐에 따라 반대 문 (이름 -> SSN)은 사실이 아닙니다.

사소한 기능 의존성

사소한 기능 종속성은 원래 속성을 포함하는 속성 콜렉션에서 속성의 기능적 종속성을 설명 할 때 발생합니다. 예를 들어, {A, B} -> B는 {name, SSN} -> SSN과 같이 사소한 기능 종속성입니다. 이러한 유형의 기능적 의존성은 상식에서 파생 될 수 있기 때문에 사소한 것입니다. B의 값을 이미 알고 있다면 B의 값은 그 지식에 의해 고유하게 결정될 수 있다는 것은 명백합니다.

완전한 기능 의존성

완전한 함수 종속성은 함수 종속성에 대한 요구 사항을 이미 충족시키고 기능 종속성 문의 왼쪽에있는 속성 집합을 더 이상 줄일 수없는 경우에 발생합니다. 예를 들어 {SSN, age} -> name은 함수 종속성이지만 종속 관계에 영향을주지 않고 명령문의 왼쪽에서 나이를 제거 할 수 있기 때문에 완전한 함수 종속성은 아닙니다.

전이 종속성

전이 종속성은 함수 종속성을 야기하는 간접 관계가있을 때 발생합니다. 예를 들어, A -> C는 true 일 때만 A -> B와 B -> C가 모두 참이어서 전 이적 종속성입니다.

다중 값 종속성

다중 값 종속은 테이블의 하나 이상의 행 존재가 동일한 테이블의 하나 이상의 다른 행의 존재를 의미 할 때 발생합니다. 예를 들어, 많은 자동차 모델을 제조하는 자동차 회사를 상상해보십시오.하지만 항상 각 모델의 빨간색과 파란색을 모두 만듭니다. 회사에서 제조 한 각 자동차의 모델 이름, 색상 및 연도가 포함 된 테이블이있는 경우 해당 테이블에 다중 값 종속성이 있습니다. 특정 모델 이름과 연도에 대한 행이 파란색으로 표시되는 경우 동일한 차량의 빨간색 버전과 비슷한 행이 있어야합니다.

의존성의 중요성

데이터베이스 종속성은 데이터베이스 정규화에 사용되는 기본 구성 요소 (데이터베이스에서 데이터를 효율적으로 구성하는 프로세스)를 제공하므로 이해하는 것이 중요합니다. 예 :

  • 테이블이 두 x 째 정규 양식 (2NF)이 되려면 테이블에서 후보 키의 서브 세트에 기능적으로 종속 인 비주 류 속성의 대소 문자가 없어야합니다.
  • 테이블을 세 번째 정규 형식 (3NF)으로 만들려면 모든 비 (非) 프라임 특성이 모든 후보 키에 대해 비양 정적 함수 종속성을 가져야합니다.
  • Boyce-Codd Normal Form (BCNF)에있는 테이블의 경우 모든 종속 관계 (사소한 종속 관계 제외)는 수퍼 키에 있어야합니다.
  • 테이블을 네 번째 정규 형식 (4NF)으로 만들려면 다중 값 종속성이 없어야합니다.