Na'urar al'ada na uku (3NF) shine ka'idodin tushe wanda ke goyan bayan amincin bayanan ta hanyar ginawa akan ka'idodin daidaitattun bayanai da aka samar da Formal Formal Form (1NF) da na biyu na al'ada (2NF).
Dokokin Na'urorin Uku na Uku
Akwai wasu bukatun guda biyu don bayanai don zama na uku na al'ada:
- Dole ne database ya cika da bukatun duka 1NF da 2NF .
- Duk ginshiƙan bayanai dole ne su dogara da maɓallin farko , ma'ana cewa ana iya samun darajar kowane shafi daga maɓallin farko kawai.
Game da Farfesa na Farko
Bari mu kara zurfafa abin da muke nufi da cewa dukkan ginshiƙan dole ne su dogara ne akan maɓallin farko.
Idan ana iya samun darajar shafi daga maɓallin maɓallin farko da kuma wani shafi a cikin teburin, ya keta 3NF. Yi la'akari da tebur ma'aikata tare da wadannan ginshiƙai:
- EmployeeID
- Sunan rana
- Sunan mahaifa
Shin duka Sunan Sunan na Farko da FirstName sun dogara kawai akan darajar ma'aikaci? Shin, LastName zai dogara ne akan FirstName? A'a, saboda babu wani abu a cikin LastName zai ba da shawara na FirstName. Shin FirstName na iya dogara da Sunan Sunan? Babu kuma, saboda wannan gaskiya ne: duk abin da Sunan Lissafi zai iya kasancewa, ba zai iya ba da alamar game da darajar FirstName ba. Saboda haka, wannan tebur ne mai yarda 3NF.
Amma ka yi la'akari da wannan matakan Vehicles:
- VehicleID
- Manufacturer
- Misali
Mai sana'a da samfurin na iya samo daga VehicleID - amma samfurin zai iya samuwa daga Mai sana'a saboda samfurin motar kawai ya sanya shi kawai ta hanyar mai sana'a. Wannan zane-zane ba shi da yarda 3NF, kuma yana iya, sabili da haka, ya haifar da anomalies bayanai. Alal misali, za ka iya sabunta mai sana'a ba tare da sabunta samfurin, gabatar da rashin kuskure ba.
Don tabbatar da shi, muna buƙatar matsawa ɗayan ƙarin shafi zuwa ɗayan kuma muyi la'akari ta amfani da maɓallin waje. Wannan zai haifar da tebur biyu:
Vehicles Table
A cikin tebur da ke ƙasa, ModelID ita ce maɓallin kewayawa ga Tables masu gada:
- VehicleID
- Manufacturer
- ModelID
Lambobin Kayan
Wannan sabon tsarin taswirar ma'adinan don masana'antun. Idan kana so ka sabunta duk wani abin hawa da aka sani game da samfurin, za ka yi a cikin tebur ɗin, maimakon a cikin tebur Vehicles.
- ModelID
- Manufacturer
- Misali
Kasashen da aka samu a cikin 3NF Model
Tebur zai iya ƙunshi filin da aka samo - wanda aka lissafta bisa wasu ginshiƙai a cikin tebur. Misali, la'akari da wannan tebur na umarnin widget din:
- Lambar Siya
- Lambar Abokin ciniki
- Farashin Ƙari
- Yawan
- Jimlar
Kundin ya karya ka'idar 3NF saboda ana iya samuwa ta hanyar ninka farashin naúrar ta hanyar yawaita, maimakon zama cikakken dogara ga maɓallin farko. Dole ne mu cire shi daga teburin don biyan tsari na uku.
A gaskiya ma, tun da aka samo shi, ya fi kyau kada ku ajiye shi a cikin database ba.
Za mu iya ƙidaya shi "a kan tashi" lokacin yin tambayoyin bayanan yanar gizo. Alal misali, ƙila mu yi amfani da wannan tambaya a baya don dawo da lambobin sarrafawa da cikakkun bayanai:
SANTA SANTA, KASHI daga WidgetOrdersZamu iya amfani da wannan tambaya:
SANTA SANTA, Ƙungiya ɗaya * Da yawa AS Total FROM WidgetOrdersdon cimma irin wannan sakamakon ba tare da keta dokoki na daidaitawa ba.