Yẹra fun awọn Dependencies ti Agbara lati Ran Ni idaniloju deede
Igbẹkẹle igbesi aye kan ninu database kan jẹ ibasepọ ti ko ni iyatọ laarin awọn nọmba ni tabili kanna ti o nmu igbẹkẹle iṣẹ . Lati ṣe aṣeyọri ifarahan deedee ti Aṣojọ Adarọ-Ofin Mẹta (3NF), o gbọdọ yọkuro eyikeyi igbẹkẹle.
Nipa irufẹ rẹ, igbẹkẹle ti o ni ilọsiwaju nilo awọn eroja mẹta tabi diẹ ẹ sii (tabi awọn apoti iṣakoso data) ti o ni igbẹkẹle iṣẹ ṣiṣe laarin wọn, ti o tumọ si Iwe-ẹri A ni tabili kan gbẹkẹle Ẹka B nipasẹ Ẹka C.
Jẹ ki a wo bi eyi ṣe le ṣiṣẹ.
Ilana ti Ayika ti Ayika
ỌMỌRỌ
Author_ID | Onkọwe | Iwe | Aṣẹ-ọfẹ-ọfẹ |
---|---|---|---|
Auth_001 | Orson Scott Kaadi | Ender's Game | Orilẹ Amẹrika |
Auth_001 | Orson Scott Kaadi | Ender's Game | Orilẹ Amẹrika |
Auth_002 | Margaret Atwood | Awọn Handmaid ká Tale | Kanada |
Ninu apẹẹrẹ AUTHORS loke:
- Iwe → Onkowe : Nibi, Awọn ẹda ti Ẹkọ ṣe ipinnu aifọwọyi Author . Ti o ba mọ orukọ iwe, o le kọ orukọ onkowe naa. Sibẹsibẹ, Onkọwe ko pinnu Iwe , nitori pe onkowe le kọ iwe pupọ. Fun apẹẹrẹ, nitoripe a mọ orukọ orukọ onkọwe Orson Scott Card, a ko tun mọ orukọ iwe naa.
- Onkowe → Author_Nationality : Bakannaa, Ẹkọ Aṣoju ṣe ipinnu Aṣẹ- Ọlọgbọn , ṣugbọn kii ṣe ọna miiran ni ayika; nitori pe a mọ pe orilẹ-ede ko tumọ si pe a le mọ onkọwe naa.
Ṣugbọn tabili yi n ṣafihan igbẹkẹle ti o ga julọ:
- Iwe → Aṣẹ-akọle -Akọjọ: Ti a ba mọ orukọ iwe, a le pinnu awọn orilẹ-ede nipasẹ iwe-ẹri Onkọwe.
Yẹra fun awọn iyokuro ti ọna
Lati ṣe idaniloju Fọọmu Normal Kẹta, jẹ ki a yọ igbẹkẹle naa.
A le bẹrẹ nipasẹ yiyọ iwe Iwe lati ọdọ Awọn akọwe Onimọ ati ṣiṣẹda tabili tabili ọtọtọ:
Awọn iwe ohun
Book_ID | Iwe | Author_ID |
---|---|---|
Book_001 | Ender's Game | Auth_001 |
Book_001 | Awọn ọmọde ti okan | Auth_001 |
Book_002 | Awọn Handmaid ká Tale | Auth_002 |
ỌMỌRỌ
Author_ID | Onkọwe | Aṣẹ-ọfẹ-ọfẹ |
---|---|---|
Auth_001 | Orson Scott Kaadi | Orilẹ Amẹrika |
Auth_002 | Margaret Atwood | Kanada |
Njẹ eyi ṣe atunṣe rẹ? Jẹ ki a ṣe ayẹwo awọn igbẹkẹle wa bayi:
Awọn tabili IWE :
- Book_ID → Iwe: Iwe naa da lori Book_ID .
- Ko si awọn igbẹkẹle miiran ni tabili yi tẹlẹ, nitorina a dara. Akiyesi pe bọtini ajeji Author_ID ṣe itọka tabili yii si tabili AUTHORS nipasẹ bọtini akọkọ rẹ Author_ID . A ti ṣẹda ibasepọ kan lati yago fun igbẹkẹle ti ara ẹni, oniruuru bọtini ti awọn apoti isura infomesonu.
Ojú-iṣẹ AUTHORS :
- Author_ID → Author: Onkowe naa da lori Author_ID .
- Onkowe → Author_Nationality: Awọn onilọlẹ le pinnu nipasẹ orilẹ-ede.
- Author_ID → Aṣẹ-akọ-iwe: Ajẹmọ orilẹ-ede le ṣe ipinnu lati Author_ID nipasẹ Ẹkọ Aṣoju . A si tun ni igbẹkẹle ti o ni imọran.
A nilo lati fi tabili mẹta kan kun lati ṣe normalize data yii:
Awọn orilẹ-ede
Country_ID | Orilẹ-ede |
---|---|
Coun_001 | Orilẹ Amẹrika |
Coun_002 | Kanada |
ỌMỌRỌ
Author_ID | Onkọwe | Country_ID |
---|---|---|
Auth_001 | Orson Scott Kaadi | Coun_001 |
Auth_002 | Margaret Atwood | Coun_002 |
Nisisiyi a ni tabili mẹta, lilo awọn bọtini ajeji lati ṣe amopọ laarin awọn tabili:
- Awọn bọtini ajeji ti CABLE BOOK Author_ID ṣe itumọ iwe kan si onkọwe ninu tabili tabili AUTHORS.
- Ori-ilẹ bọtini ajeji ti Orilẹ-ede AUTHORS Latin_ID ṣe asopọ onkowe si orilẹ-ede kan ni tabili COUNTRIES.
- Awọn tabili COUNTRIES ko ni bọtini ajeji nitori pe ko ni lati ṣe asopọ si tabili miiran ninu apẹrẹ yii.
Kini idi ti awọn ohun ti o wa ni igbesi aye jẹ Aṣiṣe Imọlẹ aaye data
Kini ni iye ti o yẹra fun awọn igbẹkẹle igbesi aye lati ṣe iranlọwọ lati rii 3NF? Jẹ ki a tun wo tabili wa akọkọ ki o si wo awọn oran ti o ṣẹda:
ỌMỌRỌ
Author_ID | Onkọwe | Iwe | Aṣẹ-ọfẹ-ọfẹ |
---|---|---|---|
Auth_001 | Orson Scott Kaadi | Ender's Game | Orilẹ Amẹrika |
Auth_001 | Orson Scott Kaadi | Awọn ọmọde ti okan | Orilẹ Amẹrika |
Auth_002 | Margaret Atwood | Awọn Handmaid ká Tale | Kanada |
Iru oniruuru yii le ṣe alabapin si awọn idaniloju data ati awọn aiṣedeede, fun apẹẹrẹ:
- Ti o ba pa awọn iwe meji naa "Awọn ọmọde ti Mind" ati "Ender's Game," o yoo pa onkowe naa "Orson Scott Card" ati orilẹ-ede rẹ patapata lati ibi ipamọ.
- O ko le fi akọsilẹ tuntun kun si ibi-ipamọ ayafi ti o tun fi iwe kan kun; ohun ti o ba jẹ pe onkọwe ko ti ṣijade laiṣe tabi o ko mọ orukọ iwe kan ti o kọwe?
- Ti "Orson Scott Card" yi irọ ilu rẹ pada, iwọ yoo ni lati yi pada ni gbogbo igbasilẹ ti o han. Nini igbasilẹ akọọlẹ pẹlu onkowe kanna le ja si alaye ti ko tọ: kini ti o ba jẹ pe oluwọle data ko mọ pe awọn igbasilẹ ọpọlọ fun u ati yi awọn data pada ni igbasilẹ kan nikan?
- O ko le pa iwe kan bi "The Handmaid's Tale" laisi tun pa aṣoju naa patapata.
Awọn wọnyi ni diẹ ninu awọn idi ti o fi ṣe idiwọ deedee , ati lati yago fun awọn igbẹkẹle igbesi aye, dabobo awọn data ati rii daju pe iṣọkan.