Bunachar Sonraí a Chur i Tríú Gnáth Foirm (3NF)

Prionsabal an bhunachar sonraí is ea an tríú foirm gnáth (3NF) a thacaíonn le sláine na sonraí trí thógáil ar phrionsabail na ngnáthnósú bunachar sonraí arna gcur ar fáil ag First Normal Form (1NF) agus an Dara Fhoirm Gnáth (2NF).

Trí Riachtanais Foirmeacha Gnáth

Tá dhá bhunriachtanas ann le bunachar sonraí a bheith sa tríú foirm gnáth:

Maidir leis an bPríomh-Shaothrú Bunscoile

Déanfaimid iniúchadh a dhéanamh ar an méid a chiallaíonn muid tríd an bhfíric go gcaithfidh gach colún ag brath ar an eochair phríomhúil.

Más féidir luach an cholúin a bhaint as an eochair phríomha agus an colún eile sa tábla, déanann sé 3NF a shárú. Smaoinigh ar an tábla Fostaithe leis na colúin seo:

An bhfuil an dá LastName agus FirstName ag brath ach ar luach EmployeeID? Bhuel, d'fhéadfadh LastName ag brath ar FirstName? Níorbh fhéidir, mar go dtabharfadh aon rud bunúsach i LastName luach FirstName. An bhféadfadh FirstName ag brath ar LastName? Níl sé arís, toisc go bhfuil an rud céanna fíor: is cuma cad a d'fhéadfadh a bheith LastName, níorbh fhéidir le fios a bheith aige maidir le luach FirstName. Dá bhrí sin, tá an tábla seo comhlíontach 3NF.

Ach déan an tábla Feithiclí seo a mheas:

D'fhéadfadh an Monaróir agus an Samhail teacht as Feithiclí Feithiclí - ach d'fhéadfadh an Samhail teacht as an Déantóir toisc go ndéanann monaróir áirithe samhail feithicle amháin. Is éard atá sa dearadh tábla seo ná 3NF comhlíontach, agus d'fhéadfadh sé, dá bhrí sin, aimhrialtachtaí sonraí a bhaint amach. Mar shampla, d'fhéadfá an monaróir a thabhairt cothrom le dáta gan an tsamhail a thabhairt cothrom le dáta, míchumais a thabhairt isteach.

Chun é a chomhlíonadh, bheadh ​​orainn an colún breise spleách a bhogadh go dtí tábla eile agus tagairt a dhéanamh air ag baint úsáide as eochair iasachta. Bheadh ​​dhá bhord mar thoradh air seo:

Tábla Feithicle

Sa tábla thíos, is eochair eachtrach é an MÓDÁID ar an tábla Models :

Tábla Múnlaí

Déanann na léarscáileanna tábla nua seo samhlacha do mhonaróirí. Más mian leat eolas faoi aon fheithicil atá sainiúil do shamhail a thabhairt cothrom le dáta, ba mhaith leat é a dhéanamh sa tábla seo, seachas sa tábla Feithiclí.

Réimse Díorthaithe sa Samhail 3NF

D'fhéadfadh go mbeadh réimse díorthaithe ag tábla - ceann atá ríomh bunaithe ar cholúin eile sa tábla. Mar shampla, breithnigh an tábla seo de orduithe giuirléidí:

Déanann an t-iomlán comhlíonadh 3NF a bhriseadh toisc gur féidir é a dhíorthú trí phraghas an aonaid a mhéadú de réir an chainníochta, seachas a bheith ag brath go hiomlán ar an eochair phríomhúil. Ní mór dúinn é a bhaint as an tábla chun an tríú foirm gnáth a chomhlíonadh.

Go deimhin, ós rud é go bhfuil sé díorthaithe, is fearr é a stóráil sa bhunachar sonraí idir.

Is féidir linn a ríomh go simplí "ar an eitilt" nuair a dhéantar ceisteanna bunachar sonraí a chomhlíonadh. Mar shampla, d'fhéadfaimis an cheist seo a úsáid roimhe seo chun uimhreacha ordú agus iomláin a aisghabháil:

SELECT Ordú Uimhreacha, Iomlán Ó WidgetOrders

Is féidir linn an cheist seo a leanas a úsáid anois:

SELECT OrderNumber, UnitPrice * Quantity AS Iomlán Ó WidgetOrders

na torthaí céanna a bhaint amach gan sáruithe a dhéanamh ar rialacha normalúcháin.