mi az adatintegritás?
ebben a korszakban, amikor egyre több adatot tárolnak és állítanak elő, mint valaha, fontos, hogy adataink integritása megmaradjon. Képzeld el, hogy néhány alkalmazottunk egy MNC-nek dolgozik. Ezek az alkalmazottak két részlegen dolgoznak, például az értékesítésben és a finanszírozásban. Mindkét részlegnek saját adatbázis-táblázata van. Akkor kétszer kell tárolnunk ezeknek az alkalmazottaknak a nyilvántartását? Nem, az adatok integritása azt mondja, hogy adatbázisunkban Nem lehet ismétlődő adat., Nincs szükség redundanciára, és az adatainknak egységesnek kell lenniük az adatbázisban. De hogyan lehet ezt elérni? A DBMS számos adatintegritási korlátozást biztosít számunkra. Tehát nézzük meg őket részletesen.
adatintegritás
az adatintegritás helyes és pontos adatokkal rendelkezik az adatbázisban. Amikor adatokat tárolunk az adatbázisban, nem akarunk ismétlődő értékeket, nem akarunk helytelen értékeket vagy törött kapcsolatokat a táblák között. Tehát egy példán keresztül értsük meg, hogy a törött kapcsolatok hogyan okozhatnak adatok következetlenségét.,
példa: képzeljük el, hogy van egy ügyféladatbázisunk, ahol két táblázatunk van, azaz “customer_table” (customer_id, customer_name, purchase_id) és “purchase_table” (purchase_id, purchhased_item). Ez a két táblázat úgy kapcsolódik egymáshoz, hogy ha az Ügyfél bármilyen vásárlást végez, akkor a megvásárolt elem adatait a purchase_table tárolja. Tehát, ha van nyilvántartásunk egy megvásárolt tételről a vásárlás_table-ben, akkor ezt a vásárlást az ügyfél _table-ben jelen lévő ügyfélnek kell elvégeznie., Most nézzük meg azt a helyzetet, amikor a vásárlási táblázat azt mondja, hogy egy elemet egy customer_id say 10 vásárol, de ez a customer_id nem létezik a customer_table-ben. Nem lehetséges, hogy a vásárlás ügyfél nélkül történik. Ilyen helyzet akkor fordulhat elő, ha az ügyfél adatait eltávolították a customer_table – ből. Tehát, ha az ügyfél adatait eltávolítják az ügyféltáblából, akkor a megfelelő adatokat is el kell távolítani a vásárlási táblázatból. Ezért az adatbázis változásait következetesen frissíteni kell az adatok integritásának megőrzése érdekében.,
Az adatok integritása korlátozásokkal tartható fenn. Ezek a korlátok meghatározzák azokat a szabályokat, amelyek szerint a műveletek, mint például a frissítés, törlés, Beillesztések stb. az adatok integritásának megőrzése érdekében el kell végezni. Elsősorban négyféle adatintegritás létezik:
- Domain Integrity
- Entity Integrity
- Referential Integrity
- User-Defined Integrity
Domain Integrity
Domain az elfogadható értékek tartományára utal. Arra az értéktartományra utal, amelyet egy adott oszlopban fogunk elfogadni és tárolni egy adatbázisban., A rendelkezésre álló adattípusok elsősorban egész számok, szöveg, dátum stb. Az oszlophoz tartozó bármely bejegyzésnek hozzáférhetőnek kell lennie az adattípus tartományában.
Példa: Ha a munkavállalók fizetését a ‘foglalkoztatott_table’ – ben kell tárolnunk, akkor korlátozhatjuk, hogy csak egész szám legyen. Bármely más bejegyzés, mint egész karakter, nem lenne elfogadható, és amikor megpróbáljuk, hogy bemenet, mint ez, a DBMS fog hibákat.
Entity Integrity
egy táblázatban szereplő entitás minden sorát egyedileg kell azonosítani, azaz, idf néhány rekordot elment az adatbázisba, majd ezt a rekordot egyedileg kell azonosítani másoktól. Ez az elsődleges kulcsok segítségével történik. Az entitáskorlátozás azt mondja, hogy az elsődleges kulcs értéke nem lehet nulla. Ha az elsődleges kulcs értéke NULL, akkor nem tudjuk egyedileg azonosítani a sorokat, ha az összes többi mező azonos. Továbbá az elsődleges kulcs segítségével egyedileg azonosíthatjuk az egyes rekordokat.
példa: ha van ügyféladatbázisunk, a customer_table pedig ott van olyan attribútumokkal, mint az életkor és a név. Ezután minden ügyfelet egyedileg kell azonosítani., Lehet, hogy két azonos nevű és azonos korú ügyfél van, így zavart okozhat az adatok visszakeresése közben. Ha visszakeresnénk az “angyal” nevű ügyfél adatait, akkor két sornak lenne ez a neve, és zavar lenne. Tehát a problémák megoldásához az elsődleges kulcsokat minden táblázatban hozzárendeljük, és egyedileg azonosítja a táblázat minden egyes bejegyzését.
Referenciális Integritás
Referenciális Integritás használják, hogy fenntartsák az adatok közötti összhang két asztal., Az adatbázis struktúrájában szabályok vannak arról, hogy a külföldi kulcsokat hogyan kell használni annak biztosítására, hogy az adatbázis változásai, kiegészítése, törlése megőrizze az adatok integritását. A referenciális integritási korlátok azt állítják, hogy ha egy idegen kulcs az első táblázatban a második táblázat elsődleges kulcsára utal, akkor az első táblázatban szereplő külföldi kulcs minden értékének nullának vagy a második táblázatban jelen kell lennie.
példa: Tegyük fel, hogy két táblánk van a hallgatóról(student_id, név, kor, course_id) és a kurzusról(course_id, course_name, duration)., Most, ha bármilyen tanfolyam_id van jelen a hallgatói táblázatban, amely nincs ott a kurzustáblában, akkor ez nem megengedett. A course_id a tanulói asztal vagy üres, vagy ha bármely course_id van jelen a tanulói asztal, akkor is jelen kell lennie a táblázat. Így tartják fenn a referenciális integritást.
felhasználó által definiált integritás
néha ez a három integritás, azaz a domain, a referenciális és az entitás integritása nem elegendő az adatok integritásának fenntartásához., Az ilyen integritást jellemzően triggerekkel és tárolt eljárásokkal valósítják meg. A triggerek egy olyan utasításblokk, amely automatikusan végrehajtja az előre meghatározott eseményeket.
Example1: amikor egy új sor kerül beillesztésre egy student_table-be, amely különböző hallgatói tantárgyakkal rendelkezik, akkor automatikusan új átlagot is kiszámítanak és tárolnak.
itt is definiálhatunk néhány felhasználó által definiált korlátot és konkrét üzleti szabályokat.
Example2: ha létrehozunk egy táblázatot a regisztrációhoz, és azt akarjuk, hogy a felhasználó életkora nagyobb legyen, mint 21., Az ilyen típusú korlátozást a felhasználó állítja be.
Example3: tegyük fel, hogy van egy employee_table attribútumokkal, mint emp_id, emp_name, job_name, fizetés, mobile_no. Itt vannak korlátozások, hogy a munkavállaló azonosítójának mindig bizonyos karakterekkel kell kezdődnie, mint például az “AfterAcademy”, majd a számjegyek. Tehát minden olyan bejegyzés, amely nem követi ezt a korlátozást, nem lenne elfogadható.
tehát ma megismertük az adatok integritását, és hogyan segít megőrizni az adatok integritását. Remélem tanultál valami újat ma.