Mikä on kokonaisuuden eheys?

Kokonaisuuden eheys on yksi tehokkaan tietokannan rakentamisen ensisijaisista säännöistä. Se viittaa ensisijaisen avaimen pakottamiseen tietokannan jokaiseen taulukkoon, jossa avaimen on oltava joko rivi tai rivien yhdistelmä, jotka ovat ainutlaatuisia ei-nolla-arvoja. Säilyttämällä kokonaisuuden eheys, jokainen tietue tietokannan jokaisessa taulukossa voidaan yksilöidä nimenomaan ensisijaisen avaimen avulla. Tämä estää päällekkäiset tietueet ja muut ongelmat, jotka voivat epäsuorasti vaarantaa tietokannan eheyden. Jos kokonaisuuden eheys puuttuu, tietokannan merkinnät voivat vahingossa mennä päällekkäin, koska tiettyä merkintää ei voi poistaa taulukosta.

Kun tarkastellaan kokonaisuuden eheyden ensimmäistä osaa, ”ainutlaatuista” arvoa, ensisijaisen avaimen käsite on tärkeä ymmärtää. Tietokannan ensisijainen avain on arvo, jota käytetään kunkin yksittäisen tietueen yksilöimiseen. Jotta ensisijainen avain olisi tehokas, sen on oltava ainutlaatuinen; toisin sanoen on osoittautunut mahdottomaksi noutaa useita tietueita etsimällä yhtä ensisijaista avainta. Sosiaaliturvatunnus olisi hyvä ensisijainen avain tietokantaan, joka keskittyy yksittäisiin henkilökohtaisiin ennätyksiin Yhdysvalloissa, koska kahdella ihmisellä ei koskaan ole samaa numeroa. Jokainen, joka etsii tietokannasta tiettyä sosiaaliturvatunnusta, hakee määritelmän mukaan vain yhden tietueen kerrallaan.

Nähdäkseen ongelmat, jotka syntyvät ilman kokonaisuuden eheyttä ainutlaatuisten ensisijaisten avainten kautta, voitaisiin kuvata tietokanta, jossa yksilön sukunimeä käytetään ensisijaisena avaimena. Koska useampi kuin yksi henkilö voi jakaa sukunimen, hakukriteereiksi kirjoittamalla “Smith” tai “Jones” saatetaan tuottaa kymmeniä tietueita. Jos näin tapahtuu, tietokannan eheys on kyseenalainen, koska loppukäyttäjällä ei ole enää tapaa hakea yksittäisiä tietueita.

Entiteetin eheyden toisessa osassa todetaan, että ensisijaiseksi avaimeksi valittu arvo ei saa koskaan olla tyhjä tai tyhjä arvo millekään tietokannan kohteelle. Jos ensisijaisen avaimen arvo pysyisi tyhjänä yhden tai useamman tietokannan tietueen osalta, tiettyjä tietueita olisi mahdotonta noutaa, koska nolla -arvo ei riitä näiden tietueiden yksilöimiseen. Toisin sanoen, jos ensisijaisena avaimena käytetään sosiaaliturvatunnusta eikä työntekijä ole Yhdysvalloista eikä hänellä sitä ole, ulkomaalaisen työntekijän tietuetta on mahdotonta tunnistaa ensisijaisella avaimella, mikä mitätöi tietokannan eheyden .