co je integrita dat?
V této době, kdy stále více a více dat je uložen a produkován než kdy jindy, je důležité, aby integrita našich dat je zachována. Představte si, že máme nějaké zaměstnance pracující pro MNC. Tito zaměstnanci pracují pro dvě oddělení, prodej a finance. Obě tato oddělení mají své vlastní databázové tabulky. Potřebujeme tedy uložit záznam těchto zaměstnanců dvakrát? Ne, integrita dat říká, že v naší databázi by neměly být žádné duplicitní údaje., Nemělo by docházet k redundanci a naše údaje by měly být konzistentní v celé databázi. Ale jak toho lze dosáhnout? DBMS nám poskytuje různá omezení integrity dat. Podívejme se na ně podrobně.
integrita dat
integrita dat má ve vaší databázi správná a přesná data. Když ukládáme data do databáze, nechceme opakovat hodnoty, Nechceme nesprávné hodnoty ani narušené vztahy mezi tabulkami. Podívejme se tedy na příklad, jak zlomené vztahy mohou způsobit nekonzistenci dat.,
Příklad: představme si, že máme databázi zákazníků, kde máme dva stoly jsem.e ‚customer_table'(zákazník_id, customer_name, purchase_id) a ‚purchase_table'(purchase_id, purchhased_item). Tyto dvě tabulky se vztahují tak, že pokud zákazník provede jakýkoli nákup, budou data zakoupené položky uložena v tabulce purchase_table. Pokud tedy máme záznam o zakoupené položce v kupní smlouvě, pak tento nákup musí provést nějaký zákazník přítomný v zákazníkovi _table., Nyní si představme situaci, kdy kupní tabulka říká, že položka je koupil dvě, řekněme, 10 ale, že zákazník_id neexistuje v customer_table. Není možné, že nákup probíhá bez zákazníka. Taková situace mohla nastat, protože data zákazníka byla odstraněna z customer_table. Pokud jsou tedy údaje zákazníka odstraněny z tabulky zákazníků, měly by být odpovídající údaje také odstraněny z nákupní tabulky. Změny v databázi proto musí být důsledně aktualizovány pro zachování integrity dat.,
integrita dat může být zachována pomocí omezení. Tato omezení definují pravidla,podle kterých operace jako updation, delece, insertions atd. musí být provedena, aby byla zachována integrita dat. Tam jsou hlavně čtyři typy Integrity Dat:
- Doménové Integrity
- Entity Integrity
- Referenční Integrity
- Uživatelem Definované Integrita
Doménové Integrity
Domény odkazuje na rozsah přijatelných hodnot. Jedná se o rozsah hodnot, které budeme přijímat a ukládat do určitého sloupce v databázi., Dostupné datové typy jsou hlavně celé číslo, text, datum atd. Každá položka, kterou provedeme pro sloupec, by měla být k dispozici v doméně datového typu.
příklad: pokud musíme uložit plat zaměstnanců do „employee_table“, můžeme omezit, že by to mělo být pouze celé číslo. Jakýkoli jiný záznam než celé číslo, jako jsou znaky, by nebyl přijatelný a když se pokusíme dát takový vstup, DBMS vytvoří chyby.
integrita Entity
každý řádek pro entitu v tabulce by měl být jednoznačně identifikován, tj., idf nějaký záznam je uložen v databázi, pak by měl být tento záznam jednoznačně identifikován od ostatních. To se provádí pomocí primárních klíčů. Omezení entity říká, že hodnota primárního klíče by neměla být nulová. Pokud je hodnota primárního klíče nulová, nemůžeme jednoznačně identifikovat řádky, pokud jsou všechna ostatní pole stejná. Také pomocí primárního klíče můžeme jednoznačně identifikovat každý záznam.
příklad: pokud máme databázi zákazníků a customer_table je zde přítomen s atributy, jako je věk a jméno. Pak by měl být každý zákazník jednoznačně identifikován., Mohou existovat dva zákazníci se stejným názvem a stejným věkem, takže při načítání dat může dojít k záměně. Pokud získáme data zákazníka s názvem „Anděl“, pak dva řádky mají toto jméno a došlo by k záměně. Chcete-li vyřešit tyto problémy, jsou v každé tabulce přiřazeny primární klíče a jedinečně identifikují každou položku tabulky.
Referenční Integrity
Referenční Integrity se používá k udržení konzistence dat mezi dvěma tabulkami., Pravidla jsou vytvořena ve struktuře databáze o tom, jak by měly být použity cizí klíče, aby se zajistilo, že změny, přidávání a mazání v databázi udržují integritu dat. Omezení referenční integrity státu, že pokud cizí klíč v první tabulce odkazuje na primární klíč v druhé tabulce pak každá hodnota cizího klíče v první tabulce by měly být buď null nebo dárek v druhé tabulce.
Příklad: předpokládejme, že máme dvě tabulky student(student_id, jméno, věk, course_id) a hřiště(course_id, course_name, doba trvání)., Nyní, pokud je v tabulce studentů přítomen nějaký kurz_id, který tam není v tabulce kurzů, není to povoleno. Kurz_id ve studentské tabulce by měl být buď nulový, nebo pokud je ve studentské tabulce přítomen nějaký kurz_id, měl by být také přítomen v tabulce kurzů. Takto je zachována referenční integrita.
uživatelsky definovaná integrita
někdy tyto tři integrity, tj., Taková integrita je obvykle implementována pomocí spouštěčů a uložených postupů. Spouštěče jsou blok příkazů, které se automaticky spustí, pokud dojde k předdefinovaným událostem.
Example1: kdykoli je do student_table vložen jakýkoli nový řádek, který má známky různých předmětů studentů, automaticky se také vypočítá a uloží nový průměr.
zde můžeme také definovat některá uživatelsky definovaná omezení a konkrétní obchodní pravidla.
Příklad2: pokud vytváříme tabulku pro registraci a chceme, aby věk uživatele byl vyšší než 21 let., Takový typ omezení je nastaven uživatelem.
Example3: předpokládejme, že máme employee_table s atributy, jako emp_id, emp_name, job_name, plat, mobile_no. Zde máme omezení, že id zaměstnance by mělo vždy začínat některými konkrétními znaky, jako je „AfterAcademy“, a poté následuje číslice. Takže jakýkoli záznam, který nedodržuje toto omezení, by nebyl přijatelný.
takže jsme se dnes dozvěděli o integritě dat a o tom, jak pomáhá při udržování integrity dat. Doufám, že jste se dnes naučili něco nového.