Kas ir tranzīta atkarība datu bāzē?

Izvairieties no transitiālas atkarības, lai palīdzētu normalizēt

Pārejoša atkarība datu bāzē ir netieša saistība starp vērtībām tajā pašā tabulā, kas izraisa funkcionālu atkarību . Lai sasniegtu trešās normālās formas normalizēšanas standartu (3NF), jums jānovērš jebkura pārejoša atkarība.

Pēc būtības pārnēsājamai atkarībai ir vajadzīgi trīs vai vairāki atribūti (vai datu bāzes kolonnas), kuru starpā ir funkcionāla atkarība, kas nozīmē, ka tabulas A sleja balstās uz B sleju caur starpposmu C.

Apskatīsim, kā tas varētu darboties.

Transitīvās atkarības piemērs

AUTORI

Author_ID Autors Grāmatu Autora vārds
Auth_001 Orson Scott Card Endera spēle Savienotās Valstis
Auth_001 Orson Scott Card Endera spēle Savienotās Valstis
Auth_002 Margaret Atvuds Amatniecības stāsts Kanāda

Iepriekš minētajā AUTHORS piemērā:

Bet šajā tabulā ir iekļauta pārejoša atkarība:

Izvairīšanās no transitiālas atkarības

Lai nodrošinātu trešo parasto veidlapu, noņemiet transitive atkarību.

Mēs varam sākt, noņēmot kolonnu Grāmata no Autora tabulas un izveidot atsevišķu Grāmatu tabulu:

ZIŅAS

Book_ID Grāmatu Author_ID
Book_001 Endera spēle Auth_001
Book_001 Mīlestības bērni Auth_001
Book_002 Amatniecības stāsts Auth_002

AUTORI

Author_ID Autors Autora vārds
Auth_001 Orson Scott Card Savienotās Valstis
Auth_002 Margaret Atvuds Kanāda

Vai tas salaboja? Apskatīsim mūsu atkarības tagad:

GRĀMATU tabula :

AUTHORS tabula :

Lai šos datus normalizētu, mums jāpievieno trešā tabula:

VALSTIS

Valsts_ID Valsts
Coun_001 Savienotās Valstis
Coun_002 Kanāda

AUTORI

Author_ID Autors Valsts_ID
Auth_001 Orson Scott Card Coun_001
Auth_002 Margaret Atvuds Coun_002

Tagad mums ir trīs tabulas, izmantojot ārējās atslēgas, lai saikne starp tabulām:

Kāpēc transitive atkarības ir slikta datu bāzes dizains

Kāda ir vērtība, kā izvairīties no pārejošām atkarībām, lai palīdzētu nodrošināt 3NF? Atkārtoti izskatiet mūsu pirmo tabulu un redzam jautājumus, ko tā rada:

AUTORI

Author_ID Autors Grāmatu Autora vārds
Auth_001 Orson Scott Card Endera spēle Savienotās Valstis
Auth_001 Orson Scott Card Mīlestības bērni Savienotās Valstis
Auth_002 Margaret Atvuds Amatniecības stāsts Kanāda

Šāda veida dizains var veicināt datu anomālijas un pretrunas, piemēram:

Šie ir tikai daži iemesli, kāpēc normalizācija un izvairoties no pārejošām atkarībām, datu aizsardzībai un konsekvences nodrošināšanai.