Paglikay sa mga Dependensiyon sa Transitive aron sa Pagtabang Siguraduhon ang Normalization
Ang usa ka transitive dependency sa usa ka database usa ka dili direktang relasyon tali sa mga bili sa samang lamesa nga maoy hinungdan sa usa ka nag-agad depende . Aron makab-ot ang standardization standard sa Third Normal Form (3NF), kinahanglan nimong papason ang bisan unsang transitive dependency.
Tungod sa kinaiya niini, ang usa ka transitive dependency nagkinahanglan og tulo o labaw pa nga mga hiyas (o database nga mga kolum) nga adunay usa ka functional dependency tali kanila, nagpasabot nga ang Column A sa usa ka lamesa nagsalig sa Column B pinaagi sa usa ka intermediate Column C.
Atong tan-awon kung unsaon kini mahimo.
Panig-ingnan nga Transitive Dependency
Mga awtor
Author_ID | Awtor | Basahon | Author_Nationality |
---|---|---|---|
Auth_001 | Orson Scott Card | Ang Game ni Ender | Estados Unidos |
Auth_001 | Orson Scott Card | Ang Game ni Ender | Estados Unidos |
Auth_002 | Si Margaret Atwood | Ang Sugilanon sa Sulugoon | Canada |
Diha sa MGA AWTORS example sa ibabaw:
- Basahon → Awtor : Dinhi, ang basihanan sa Basahon nagtino sa kinaiya sa Awtor . Kung nahibal-an nimo ang ngalan sa libro, mahimo kang makat-on sa ngalan sa awtor. Bisan pa, ang Tagda wala motino sa Libro , tungod kay ang usa ka tagsulat makahimo pagsulat sa daghang mga libro. Pananglitan, tungod kay nahibal-an namon ang ngalan sa awtor nga Orson Scott Card, wala gihapon namo mahibal-an ang ngalan sa libro.
- Awtor → Author_Nationality : Sa samang paagi, ang Awtor sa kinaiya nagtino sa Author_Nationality , apan dili sa laing paagi; tungod lamang kay nahibal-an nato nga ang nasyonalidad wala magpasabut nga atong matino ang tagsulat.
Apan kini nga lamesa nagpaila sa usa ka transitive dependency:
- Basahon → Author_Nationality: Kon nahibal-an namon ang ngalan sa libro, mahimo natong matino ang nasyonalidad pinaagi sa kolum sa Author.
Paglikay sa mga Transitive Dependencies
Aron maseguro ang Third Normal Form, atong tangtangon ang pagsalig nga transitive.
Mahimo natong sugdan pinaagi sa pagwagtang sa kolum sa Basahon gikan sa talento sa Authors ug pagmugna og usa ka linain nga lamesa sa Mga Libro:
MGA LIBRO
Book_ID | Basahon | Author_ID |
---|---|---|
Book_001 | Ang Game ni Ender | Auth_001 |
Book_001 | Mga Bata sa Hunahuna | Auth_001 |
Book_002 | Ang Sugilanon sa Sulugoon | Auth_002 |
Mga awtor
Author_ID | Awtor | Author_Nationality |
---|---|---|
Auth_001 | Orson Scott Card | Estados Unidos |
Auth_002 | Si Margaret Atwood | Canada |
Gihimo ba kini niini? Susihon nato ang atong mga dependensya karon:
Lamesa sa LIBRO :
- Book_ID → Basahon: Ang Libro nagadepende sa Book_ID .
- Walay laing mga dependency sa lamesa nga anaa, mao nga kita okay. Timan-i nga ang langyaw nga yawe Author_ID nag- link sa kini nga lamesa ngadto sa lamesa sa mga Magbabala pinaagi sa pangunang yawe nga Author_ID . Naghimo kami og usa ka relasyon aron malikayan ang usa ka transitive dependency, usa ka importante nga disenyo sa mga relational nga mga database.
Mga lamesa sa pamilyar :
- Author_ID → May-akda : Ang Author nagdepende sa Author_ID .
- Awtor → Author_Nationality: Ang nasyonalidad mahimong determinado sa tagsulat.
- Author_ID → Author_Nationality: Ang nasyonalidad mahimong determinado gikan sa Author_ID pinaagi sa Awtor nga hiyas. Aduna pa kitay transitive dependency.
Kinahanglan namong idugang ang ikatlo nga lamesa aron ma-normalize kini nga datos:
MGA NASOD
Country_ID | Nasud |
---|---|
Coun_001 | Estados Unidos |
Coun_002 | Canada |
Mga awtor
Author_ID | Awtor | Country_ID |
---|---|---|
Auth_001 | Orson Scott Card | Coun_001 |
Auth_002 | Si Margaret Atwood | Coun_002 |
Karon aduna kami'y tulo ka mga lamesa, nga naggamit sa mga langyaw nga mga yawe sa pag-link tali sa mga lamesa:
- Ang langyaw nga yawe sa BOOK nga lamesa nag-link sa usa ka basahon ngadto sa usa ka tigsulat sa lamesa sa mga Magbabalaod.
- Ang langyawng yawe sa AUTHORS table nga Country_ID nagkonektar sa tagsulat sa usa ka nasud sa COUNTRIES table.
- Ang lamesa sa mga COUNTRIES walay bisan unsa nga langyaw nga yawe tungod kay dili kinahanglan nga mag-link sa lain nga lamesa niini nga disenyo.
Ngano nga ang mga Dependensiyon sa Transpormasyon Dili Maayo nga Disenyo sa Database
Unsa ang bili sa paglikay sa mga transitive dependency aron sa pagsiguro sa 3NF? Atong hisgotan ang una natong lamesa ug tan-awon ang mga isyu nga gimugna niini:
Mga awtor
Author_ID | Awtor | Basahon | Author_Nationality |
---|---|---|---|
Auth_001 | Orson Scott Card | Ang Game ni Ender | Estados Unidos |
Auth_001 | Orson Scott Card | Mga Bata sa Hunahuna | Estados Unidos |
Auth_002 | Si Margaret Atwood | Ang Sugilanon sa Sulugoon | Canada |
Kini nga matang sa disenyo mahimong makatampo sa mga anomalya sa datos ug panagsumpaki, pananglitan:
- Kon imong papason ang duha ka libro nga "Children of the Mind" ug "Ender's Game," mahimo nimong papason ang awtor nga "Orson Scott Card" ug ang iyang nasyonalidad gikan sa database.
- Dili ka makadugang sa usa ka bag-ong awtor sa database gawas kung magdugang ka usab og libro; unsa man kon ang tagsulat wala pa mamantala o wala ka mahibalo sa ngalan sa usa ka basahon nga iyang gisulat?
- Kon ang "Orson Scott Card" nakapausab sa iyang pagkalungsoranon, kinahanglang usbon nimo kini sa tanan nga mga rekord nga iyang makita. Ang pagbaton sa daghang mga rekord nga adunay sama nga tigsulat mahimong moresulta sa dili tukma nga datos: unsa man kon ang data entry nga tawo wala makaamgo adunay daghang mga rekord alang kaniya ug nagbag-o sa datos sa usa lamang ka rekord?
- Dili nimo makuha ang libro sama sa "The Handmaid's Tale" nga wala usab sa pagtangtang sa tigsulat sa hingpit.
Kini ang pipila ka mga katarungan nganong ang pag-normalize , ug paglikay sa mga dependent nga transitive, pagpanalipod sa datos ug pagsiguro sa pagkamakanunayon.