Skip to content

Vícehodnotová závislost při návrhu databáze

19 de Červenec de 2021
network connection 898821398 5b4395afc9e77c00370fd486

V relační databázi dojde k závislosti, když informace uložené ve stejné databázové tabulce jednoznačně určují další informace uložené ve stejné tabulce. Závislost s více hodnotami nastane, když přítomnost jednoho nebo více řádků v tabulce implikuje přítomnost jednoho nebo více dalších řádků ve stejné tabulce. Jinými slovy, dva atributy (nebo sloupce) v tabulce jsou na sobě nezávislé, ale oba závisí na třetím atributu.

Závislost s více hodnotami brání normalizačnímu standardu čtvrtá normální forma. Relační databáze se řídí pěti běžnými formami, které představují pokyny pro návrh záznamu. Zabraňují anomáliím aktualizací a nekonzistencím v datech. Čtvrtý normální formulář se zabývá vztahy typu jedna k jedné v databázi.

Funkční závislost vs. závislost na více hodnotách

Abychom pochopili závislost s více hodnotami, je užitečné se znovu podívat, co je to funkční závislost. Pokud atribut X jednoznačně určuje atribut Y, pak Y je funkčně závislý na X. Toto se zapisuje jako X -> Y. Například v tabulce Studenti níže Student_Name určuje Major:

Jméno studenta Hlavní, důležitý
Ravi Historie umění
Beth Chemie
Studenti
Tuto funkční závislost lze zapsat: Student_Name -> Major. Každé Student_Name určuje přesně jeden major a ne více. Pokud chcete, aby databáze sledovala také sporty, které tito studenti absolvují, možná si myslíte, že nejjednodušší způsob, jak to udělat, je přidat další sloupec s názvem Sport:

Jméno studenta Hlavní, důležitý Sport
Ravi Historie umění Fotbal
Ravi Historie umění Volejbal
Ravi Historie umění Tenis
Beth Chemie Tenis
Beth Chemie Fotbal
Studenti
Problém je v tom, že Ravi i Beth hrají několik sportů. Pro každý další sport je nutné přidat novou řadu. Tato tabulka zavedla závislost s více hodnotami, protože major a sport jsou na sobě nezávislé, ale oba závisí na studentovi. Toto je jednoduchý příklad a snadno identifikovatelný, ale závislost s více hodnotami by se mohla stát problémem ve velké a složité databázi. Závislost s více hodnotami je zapsána X -> -> Y. V tomto případě:

Jméno studenta -> -> Hlavní, důležitý
Jméno studenta -> -> Sport

Toto se čte jako „Student_Name multidetermines Major“ a „Student_Name multidetermines Sport“. Závislost s více hodnotami vždy vyžaduje alespoň tři atributy, protože se skládá z alespoň dvou atributů, které jsou závislé na třetím.

Vícehodnotová závislost a normalizace

Tabulka s vícehodnotovou závislostí porušuje normalizační standard čtvrtého normálního formuláře, protože vytváří zbytečné redundance a může přispívat k nekonzistentním datům. Aby se to zvýšilo na 4NF, je nutné rozdělit tyto informace do dvou tabulek. Níže uvedená tabulka má funkční závislost Student_Name -> Major a žádné závislosti s více hodnotami:

Jméno studenta Hlavní, důležitý
Ravi Historie umění
Ravi Historie umění
Ravi Historie umění
Beth Chemie
Beth Chemie
Studenti a velitelé
Zatímco tato tabulka má také jednu funkční závislost Student_Name -> Sport:

Jméno studenta Sport
Ravi Fotbal
Ravi Volejbal
Ravi Tenis
Beth Tenis
Beth Fotbal
Studenti a sport
Normalizace se často provádí zjednodušením složitých tabulek tak, aby obsahovaly informace týkající se jediného nápadu nebo tématu, spíše než snahou o to, aby jedna tabulka obsahovala příliš mnoho různorodých informací. Více od Lifewire

  • Muž s notebookem

    Co je to přechodná závislost v databázi

  • Architekt při pohledu na databázi v počítači

    Definice relace databáze

  • Ruce webového designéra pomocí digitálního tabletu

    Plná funkční závislost v normalizaci databáze

  • Graf na obrazovce počítače.

    Co je databázový vztah?

  • Mladá žena se soustředí na svou práci před počítačem

    Co jsou to závislosti na databázi?

  • Žena s výhledem na serverovnu

    Osobní vztahy v databázi

  • Podnikatel pomocí počítače v místnosti virtuálního serveru.

    Vložení databáze do první normální formy

  • Diagram vztahu mezi entitami

    Definice diagramu entita-vztah

  • Podnikatelé mluví, diskuse o data na notebooku v konferenční místnosti setkání

    Úvod do databázových vztahů

  • Servery v serverových rozvaděčích s překrytím diagramu virtuální sítě.

    Porozumění triviální funkční závislosti

  • Obchodní lidé diskutovat o notebooku u stolu na schůzce

    Atribut databáze definuje vlastnosti tabulky

  • Digitální ztvárnění počítačového kódu a spojovacích čar představujících databázi

    Glosář běžných termínů v databázi

  • Karty sociálního zabezpečení

    Co je primární klíč?

  • Správce databáze pracující u stolu

    Definování domény databáze

  • Programátor databází pomocí notebooku u stolu v domácí kanceláři

    Uvedení databáze do třetí normální formy (3NF)

  • Stylizovaný vývojový diagram databáze

    Základy normalizace databáze

Záchranný drát

Následuj nás

  • Facebook

  • O nás
  • Inzerovat
  • Zásady ochrany osobních údajů
  • Zásady používání souborů cookie
  • Kariéra
  • Redakční pokyny
  • Kontakt
  • Podmínky použití
  • Ochrana osobních údajů v EU
  • Oznámení o ochraně osobních údajů v Kalifornii
  • DŮVĚRYHODNÉ

Vaše práva na soukromí

Lifewire a naši partneři třetích stran používají soubory cookie a zpracovávají osobní údaje, jako jsou jedinečné identifikátory, na základě vašeho souhlasu s ukládáním a / nebo přístupem k informacím v zařízení, zobrazováním personalizovaných reklam a pro měření obsahu, přehled publika a vývoj produktů. Chcete-li změnit nebo odvolat váš výběr souhlasu pro Lifewire.com, včetně vašeho práva vznést námitku, kde je použit oprávněný zájem, klikněte níže. Nastavení můžete kdykoli aktualizovat pomocí odkazu „Ochrana osobních údajů v EU“ v dolní části jakékoli stránky. Tyto volby budou globálně signalizovány našim partnerům a nebudou mít vliv na data procházení. Seznam partnerů (prodejců)

My a naši partneři zpracováváme údaje pro:

Aktivně pro identifikaci skenujte vlastnosti zařízení. Používejte přesná geolokační data. Ukládejte a / nebo přistupujte k informacím na zařízení. Vyberte přizpůsobený obsah. Vytvořte si osobní profil obsahu. Měření výkonu reklamy. Vyberte základní reklamy. Vytvořte si přizpůsobený profil reklam. Vyberte přizpůsobené reklamy. Aplikujte průzkum trhu a získejte informace o publiku. Měření výkonu obsahu. Vyvíjejte a vylepšujte produkty. Seznam partnerů (prodejců)