Dab Tsi Cov Ntaub Ntawv Database?

Database dependencies yog lub ntsiab lus uas feem ntau confuses cov menyuam kawm ntawv thiab cov kws ua haujlwm ntawm cov ntaub ntawv sib tw. Qhov zoo ces, lawv tsis yog qhov nyuaj thiab zoo tshaj plaws los ntawm kev siv ntau tus qauv. Hauv tsab xov xwm no, peb kuaj xyuas hom kev tshawb nrhiav hom kev tshawb fawb.

Database Cov Nyiaj Txiag / Cov Haujlwm Kev Txom Nyem

Ib qho quav yeeb tshuaj tshwm sim nyob rau hauv ib qho chaw thaum lub sij hawm cov lus qhia khaws cia hauv tib lub rooj database uniquely txiav txim siab lwm cov lus qhia hauv tib lub rooj. Koj kuj tuaj yeem piav qhia qhov no ua ib qho kev sib raug zoo uas paub txog tus nqi ntawm ib tus attribute (los yog ib co ntawm cov cwj pwm) yog txaus los qhia koj tus nqi ntawm lwm tus cwj pwm (los yog cov cwj pwm) hauv tib lub rooj.

Hais tias muaj kev ywj pheej ntawm cov cwj pwm nyob rau hauv ib lub rooj yog tib yam li hais tias muaj kev sib koom tes ntawm cov cwj pwm. Yog hais tias nws muaj kev vam khom nyob rau hauv cov ntaub ntawv xws li tus attribute B yog nyob ntawm tus attribute A, koj yuav sau qhov no ua "A -> B".

Piv txwv, Hauv daim ntawv teev cov neeg ua haujlwm nrog tus Social Security Number (SSN) thiab lub npe, nws tuaj yeem hais tias lub npe yog nyob ntawm SSN (los yog SSN -> npe) vim tias tus neeg ua haujlwm lub npe tuaj yeem raug txiav txim siab ntawm lawv tus SSN. Txawm li cas los xij, daim ntawv qhia rov qab (lub npe -> SSN) tsis muaj tseeb vim tias ntau tshaj ib tus neeg ua haujlwm tau tib lub npe tiam sis txawv SSNs.

Tsis Txaus Siab Tsis Taus

Ib qho tsis tseem ceeb kev ua haujlwm tshwm sim thaum koj piav txog kev ua haujlwm ntawm tus cwj pwm ntawm tus cwj pwm ntawm cov cwj pwm uas suav nrog tus cwj pwm qub. Piv txwv li, "{A, B} -> B" yog qhov kev ua haujlwm tsis tseem ceeb, xws li "{name, SSN} -> SSN". Hom kev ua haujlwm no yog hu ua tsis tseem ceeb vim tias nws tuaj yeem muab los ntawm kev nkag siab zoo. Nws yog pom tseeb tias yog tias koj twb paub txog tus nqi B lawm, ces tus nqi ntawm B tuaj yeem raug txiav txim siab los ntawm qhov kev paub ntawd.

Tag Nrho Qhov Kev Txom Nyem

Ib txoj kev ua haujlwm uas ua haujlwm puv ntoob yog tshwm sim thaum koj twb ua tau raws li qhov kev txwv ntawm kev ua haujlwm thiab qhov txheej txheem ntawm sab laug ntawm daim ntawv tso cai ntawm kev ua haujlwm tsis tuaj yeem txo qis dua. Piv txwv li, "{SSN, age} -> lub npe" yog ib qhov kev ua haujlwm zoo, tab sis nws tsis yog ib qho kev ua haujlwm zoo rau koj vim koj tuaj yeem tshem hnub nyoog ntawm sab laug ntawm nqe lus tsis muaj kev cuam tshuam nrog kev sib raug zoo.

Cov Kev Hloov Mus Los

Transitive dependencies tshwm sim thaum muaj kev tsis ncaj ncees uas ua rau muaj kev ua haujlwm zoo. Piv txwv li, "A -> C" yog qhov kev hloov siab lees paub thaum nws muaj tseeb vim hais tias ob qho tag nrho "A -> B" thiab "B -> C" yog qhov tseeb.

Ntau Qhov Kev Nyuaj Siab

Cov kev sib txuam nrog ntau yog tshwm sim thaum muaj ib kab los yog ntau kab nyob rau hauv ib lub rooj qhia tias muaj ib los sis ntau dua kab hauv tib lub rooj. Piv txwv, xav txog ib lub tuam txhab tsheb uas tsim ntau qauv ntawm lub tsheb, tab sis nco ntsoov ua ob qho xim liab thiab xiav ntawm txhua tus qauv. Yog tias koj muaj ib lub rooj uas muaj tus qauv lub npe, xim thiab lub xyoo ntawm txhua lub tsheb rau lub tuam txhab, nws muaj kev sib koom siab ntawm ntau tus neeg hauv lub rooj. Yog tias muaj ib kab rau ib hom qauv lub npe thiab lub xyoo rau hauv xiav, yuav tsum muaj ib txoj kab zoo sib xws rau qhov liab version ntawm tib lub tsheb.

Qhov tseem ceeb ntawm kev tso cai

Database dependencies yog ib qho tseem ceeb rau kev nkag siab vim hais tias lawv muab cov khoom vaj tsev yooj yim uas siv hauv kev ua lag luam ntawm cov qauv . Piv txwv li: