Muab ib qho Database nyob hauv peb daim ntawv (3NF)

Daim ntawv thib peb (3NF) yog lub hauv paus ntsiab lus ntawm cov ntaub ntawv pov thawj ntawm cov ntaub ntawv los ntawm kev txhim kho cov ntsiab lus ntawm cov qauv ntawm lub ntsiab lus ntawm Thawj Daim Ntawv Teev Npe (1NF) thiab Ob Daim Ntawv Teev Ntawv (2NF).

Daim Ntawv Teev Tseg Peb

Muaj ob txoj cai uas yuav tsum muaj rau cov ntaub ntawv database rau hauv daim ntawv thib peb:

Txog lub Koom Haum Ntxhais Yoojyim

Cia peb tshawb ntxiv tias peb txhais li cas los ntawm qhov tseeb tias txhua txhua kab yuav tsum nyob ntawm qhov tseem ceeb.

Yog hais tias ib kem tus nqi yuav muab tau los ntawm ob qhov tseem ceeb thiab lwm kem hauv lub rooj, nws ua txhaum 3NF. Xav txog cov neeg ua haujlwm cov neeg ua haujlwm nrog cov kab ntawv no:

Ua ob qho tib si LastName thiab FirstName tsuas yog nyob ntawm tus nqi ntawm EmployeeID? Zoo, yuav LastName nyob ntawm FirstName? Tsis tau, vim hais tias tsis muaj dab tsi nyob rau hauv LastName yuav qhia tus nqi ntawm FirstName. Ua Tus Ntaus Npe nyob ntawm LastName? Tsis muaj dua, vim tias qhov qub yog qhov tseeb: txawm tias ib lub npe LastName yuav yog, nws tsis tuaj yeem muab ib qho piv txwv rau tus nqi ntawm FirstName. Yog li no, cov lus no yog 3NF raws txoj cai.

Tab sis xav txog cov Rooj Vaj Kab Ke:

Lub Chaw Tsim Tshuaj thiab Tus Qauv yuav muab los ntawm Lub Tsheb - tab sis Tus Qauv kuj muab tau los ntawm Lub Chaw Tsim Nyog vim hais tias lub tsheb qauv yog ua los ntawm ib lub chaw tsim khoom. Cov lus qhia no yog non-3NF raws txoj cai, thiab yuav, yog li, ua rau cov ntaub ntawv anomalies. Piv txwv li, koj tuaj yeem hloov cov chaw tsim khoom uas tsis muab kho dua tus qauv, qhia cov tsis muaj tseeb.

Ua kom ua raws li, peb yuav tau tsiv tawm cov kab nrug ntxiv rau lwm lub rooj thiab qhia nws siv tus yuam sij txawv teb chaws. Qhov no yuav ua rau ob lub rooj:

Cov Tsav Tsheb

Hauv qab rooj plaub, ModelID yog tus yuam sij txawv teb chaws rau cov qauv ntawm cov qauv :

Cov Qauv Qauv

Cov lus tshiab no qauv qauv ua lag luam. Yog tias koj xav hloov cov tsheb xov xwm tshwj xeeb rau ib tus qauv, koj yuav ua nws nyob rau hauv lub rooj no, tsis yog hauv lub rooj rooj mov.

Derived Fields nyob rau hauv 3NF Model

Ib lub rooj zaum yuav muaj ib lub teb muab tau - ib qho uas yog xam raws li lwm kab hauv lub rooj. Piv txwv, xav txog cov lus qhia ntawm cov lus qhia ntawm widget:

Qhov tag nrho so 3NF ua raws li vim hais tias nws muaj peev xwm yuav muab tau los ntawm kev muab cov nqi tsev los ntawm qhov ntau, es tsis yog nyob ntawm tus thawj qhov tseem ceeb. Peb yuav tsum muab tshem tawm ntawm lub rooj mus ua raws peb daim ntawv.

Qhov tseeb, txij li thaum nws muab tau, nws zoo dua uas tsis cia nws nyob hauv cov ntaub ntawv txhua.

Peb tuaj yeem txheeb nws "ntawm yoov" thaum ua qhov kev tshawb xyuas database. Piv txwv li, peb yuav tau siv cov lus nug no los muab cov lus teb rov qab thiab tag nrho:

Xaiv OrderNumber, Tag nrho LOS NTAWM WidgetOrders

Peb tuaj yeem siv cov lus nug hauv qab no:

Xaiv OrderNumber, UnitPrice * NQI LOS NTAWM TAG NRHO LOS NTAWM WidgetOrders

kom ua tiav cov ntsiab lus tib yam tsis ua txhaum cov kev cai ntawm normalization.