Skip to main content

機能的依存関係の定義

V SYSTEMS Introduction (六月 2026)

V SYSTEMS Introduction (六月 2026)
Anonim

データベース内の関数の依存関係は、属性間の制約のセットを強制します。これは、リレーション内の1つの属性が別の属性を一意に決定する場合に発生します。これは書くことができます A→B これは、 "Bは機能的にAに依存している"ことを意味する。これは、データベース依存関係とも呼ばれます。

この関係では、AはBの値を決定し、BはAに依存する。

データベース設計で機能依存性が重要な理由

機能的な依存関係は、データの正当性を保証するのに役立ちます。表の考慮社会保障番号(SSN)、名前、生年月日、住所などの特性を列挙する従業員。

属性SSNは、名前、生年月日、住所およびおそらく他の値の値を決定します。社会保障番号は固有であるため、名前、生年月日または住所は異なる場合があるためです。次のように書くことができます:

SSN - >氏名、生年月日、住所

したがって、名前、生年月日、住所は機能的にSSNに依存しています。ただし、同じ名前を持つことができますが、複数の従業員が同じSSNを持つことはないため、逆ステートメント(name - > SSN)は真です。もっと具体的には、SSN属性の値を知っていれば、名前、生年月日、住所の値を見つけることができます。しかし、name属性だけの値を知っていれば、SSNを特定することはできません。

機能依存の左側には、複数の属性を含めることができます。複数の事業所があるビジネスがあるとします。 Employee、Title、Department、Location、およびManagerの属性を持つEmployeeテーブルがあります。

従業員は彼が働いている場所を判断するので、依存関係があります。

従業員 - >場所

しかし、その場所には複数のマネージャが存在することがあるため、従業員と部門が一緒にマネージャを決定します。

従業員、部署 - >マネージャー

機能的依存と正規化

機能的依存性は、データの完全性を保証し、データの冗長性を削減する、データベース正規化と呼ばれるものに貢献します。正規化がなければ、データベース内のデータが正確で信頼できるものであるという保証はありません。