Funksionele afhanklikheid in 'n databasis

Funksionele afhanklikhede Help om data duplisering te vermy

'N Funksionele afhanklikheid in 'n databasis afdwing 'n stel beperkings tussen eienskappe. Dit gebeur wanneer een kenmerk in 'n verhouding 'n ander eienskap uniek bepaal. Dit kan geskryf word A -> B wat beteken "B is funksioneel afhanklik van A." Dit word ook 'n databasisafhanklikheid genoem.

In hierdie verhouding bepaal A die waarde van B, terwyl B afhang van A.

Waarom funksionele afhanklikheid belangrik is in databasisontwerp

Funksionele afhanklikheid help om die geldigheid van data te verseker. Raadpleeg 'n tafel Werknemers wat eienskappe insluit, insluitend die sosiale sekerheidsnommer (SSN), naam, geboortedatum, adres en so meer.

Die attribuut SSN sal die waarde van die naam, geboortedatum, adres en miskien ander waardes bepaal, omdat 'n sosiale sekerheid nommer uniek is, terwyl 'n naam, geboortedatum of adres nie mag wees nie. Ons kan dit so skryf:

SSN -> naam, geboortedatum, adres

Daarom is naam, geboortedatum en adres funksioneel afhanklik van SSN. Die omgekeerde stelling (naam -> SSN) is egter nie waar nie, aangesien meer as een werknemer dieselfde naam kan hê, maar nooit dieselfde SSN sal hê nie. Stel 'n ander, meer konkrete manier, as ons die waarde van die SSN-kenmerk ken, kan ons die waarde van naam, geboortedatum en adres vind. Maar as ons die waarde van slegs die kenmerk ken, weet ons nie die SSN nie.

Die linkerkant van 'n funksionele afhanklikheid kan meer as een eienskap insluit. Kom ons sê ons het 'n besigheid met verskeie plekke. Ons kan dalk 'n tafelwerknemer hê met eienskappe van werknemer, titel, departement, ligging en bestuurder.

Die werknemer bepaal die plek waar hy werk, so daar is 'n afhanklikheid:

werknemer -> plek

Maar die plek kan meer as een bestuurder hê, so werknemer en departement bepaal saam die bestuurder:

werknemer, departement -> bestuurder

Funksionele afhanklikheid en normalisering

Funksionele afhanklikheid dra by tot wat bekend staan ​​as databasis normalisering , wat data integriteit verseker en data ontslag verminder. Sonder normalisering is daar geen versekering dat die data in 'n databasis akkuraat en betroubaar is nie.