Communiquez avec les autres et partagez vos connaissances professionnelles

Inscrivez-vous ou connectez-vous pour rejoindre votre communauté professionnelle.

Suivre

What is a “functional dependency”? How does it relate to database table design?

user-image
Question ajoutée par Maalik Muhamed , Deputy Mill Manager , AZANIA GROUP OF COMPANYS
Date de publication: 2014/04/17
Divyesh Patel
par Divyesh Patel , Assistant Professional Officer- Treasury , City Of Cape Town

Functional dependency relates to how one object depends upon the other in the database.

Abdul-Hameed Deeb Al-Sawadi
par Abdul-Hameed Deeb Al-Sawadi , IT Manager , Masaneed Commercial Group (MCG)

In relational database theory, a functional dependency is a constraint between two sets of attributes in a relation from a database.

Given a relation R, a set of attributes X in R is said to functionally determine another set of attributes Y, also in R, (written X → Y) if, and only if, each X value is associated with precisely one Y value; R is then said to satisfy the functional dependency X → Y. Equivalently, the projection \\pi_{X,Y}R is a function, i.e. Y is a function of X.[1][2] In simple words, if the values for the X attributes are known (say they are x), then the values for the Y attributes corresponding to x can be determined by looking them up in any tuple of R containing x. Customarily X is called the determinant set and Y the dependent set. A functional dependency FD: X → Y is called trivial if Y is a subset of X.

The determination of functional dependencies is an important part of designing databases in the relational model, and in database normalization and denormalization. A simple application of functional dependencies is Heath’s theorem; it says that a relation R over an attribute set U and satisfying a functional dependency X → Y can be safely split in two relations having the lossless-join decomposition property, namely into \\pi_{XY}(R)\\bowtie\\pi_{XZ}(R) = R where Z = U − XY are the rest of the attributes. (Unions of attribute sets are customarily denoted by mere juxtapositions in database theory.) An important notion in this context is a candidate key, defined as a minimal set of attributes that functionally determine all of the attributes in a relation. The functional dependencies, along with the attribute domains, are selected so as to generate constraints that would exclude as much data inappropriate to the user domain from the system as possible.

 

Ref. http://en.wikipedia.org/wiki/Functional_dependency

Ragesh Vadakkedath Ramachandran
par Ragesh Vadakkedath Ramachandran , IT Administrator , Nippon Motor Corporation (P) Ltd

A Functional Dependency is a constraint between two sets of attributes in a relation from a database

 

Definition - What does Functional Dependency mean?

Functional dependency is a relationship that exists when one attribute uniquely determines another attribute. If R is a relation with attributes X and Y, a functional dependency between the attributes is represented as X->Y, which specifies Y is functionally dependent on X. Here X is termed as a determinant set and Y as a dependant attribute. Each value of X is associated precisely with one Y value. Functional dependency in a database serves as a constraint between two sets of attributes. Defining functional dependency is an important part of relational database design and contributes to aspect normalization.

Mufeed Farhan
par Mufeed Farhan , HR Applications Manager , SBM

 

Functional dependencies (FDs) are used to specify formal measures  of the "goodness" of relational designs . They are derived from the real-world constraints on the attributes .

 

e.g.

 

Social Security Number determines employee name SSN à ENAME

 

Project Number determines project name and location PNUMBER à {PNAME, PLOCATION}

 

Employee SSN and project number determines the hours per week that the employee works on the project {SSN, PNUMBER} à HOURS