Skip to content

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

13 de Červenec de 2021
GettyImages 167132255 5a43c8b77d4be8003619e14d

Plná funkční závislost je stav normalizace databáze, který odpovídá normalizačnímu standardu Second Normal Form (2NF). Stručně to znamená, že splňuje požadavky First Normal Form (1NF) a všechny neklíčové atributy jsou plně funkčně závislé na primárním klíči. To není tak složité, jak to může znít. Podívejme se na to podrobněji.

Shrnutí první normální formy

Předtím, než může být databáze plně funkčně závislá, musí nejprve vyhovovat First Normal Form. To vše znamená, že každý atribut musí obsahovat jednu atomovou hodnotu. Například následující tabulka není v souladu s 1NF, protože zaměstnanec Tina je propojen se dvěma místy, obě v jedné buňce:

Zaměstnanec Umístění
John Los Angeles
Tina Los Angeles, Chicago

Povolení tohoto návrhu by mohlo negativně ovlivnit aktualizace dat nebo položky. Chcete-li zajistit soulad s 1NF, uspořádejte tabulku tak, aby všechny atributy (nebo buňky sloupců) obsahovaly jednu hodnotu:

Zaměstnanec Umístění
John Los Angeles
Tina Los Angeles
Tina Chicago

Ale 1NF stále není dost, aby se zabránilo problémům s daty.

Jak 2NF pracuje na zajištění plné závislosti

Chcete-li být plně závislí, musí všechny klíčové atributy, které nejsou kandidáty, záviset na primárním klíči. Atribut kandidátského klíče je jakýkoli klíč (například primární nebo cizí klíč) používaný k jedinečné identifikaci záznamu databáze. Návrháři databází používají k popisu závislých vztahů mezi atributy notaci: Pokud atribut A určuje hodnotu B, zapíšeme to A -> B, což znamená, že B je funkčně závislý na A. V tomto vztahu A určuje hodnotu B, zatímco B závisí na A. Například v následujících odděleních zaměstnanců stůl, ID zaměstnance a DeptID jsou oba kandidátské klíče: ID zaměstnance je primární klíč tabulky while DeptID je cizí klíč. Jakékoli další atributy – v tomto případě Jméno zaměstnance a DeptName—Musí záviset na primárním klíči, aby byla získána jeho hodnota

ID zaměstnance Jméno zaměstnance DeptID DeptName
Emp1 John Dept001 Finance
Emp2 Tina Dept003 Odbyt
Emp3 Carlos Dept001 Finance

V tomto případě tabulka není plně závislá, protože zatímco název zaměstnance závisí na primárním klíči ID zaměstnanceDeptName záleží místo toho na DeptID. Tomu se říká částečná závislost. Aby tato tabulka vyhovovala 2NF, musíme data rozdělit do dvou tabulek: tabulka Zaměstnanci a tabulka Oddělení. Tady je tabulka Zaměstnanci:

ID zaměstnance Jméno zaměstnance DeptID
Emp1 John Dept001
Emp2 Tina Dept003
Emp3 Carlos Dept001

Odstraníme DeptName atribut z tabulky Zaměstnanci a vytvořte novou tabulku Oddělení:

DeptID DeptName
Dept001 Finance
Dept002 Lidské zdroje
Dept003 Odbyt

Nyní jsou vztahy mezi tabulkami plně závislé nebo ve 2NF.

Proč je důležitá úplná závislost

Plná závislost mezi atributy databáze pomáhá zajistit integritu dat a vyhnout se anomáliím dat. Zvažte například tabulku v části výše, která dodržuje pouze 1NF. Tady to je, znovu:

Zaměstnanec Umístění
John Los Angeles
Tina Los Angeles
Tina Chicago

Tina má dva záznamy. Pokud aktualizujeme jeden, aniž bychom si uvědomili, že existují dva, výsledkem by byla nekonzistentní data. Nebo co když chceme do této tabulky přidat zaměstnance, ale místo ještě neznáme? Mohlo by nám být zakázáno dokonce přidat nového zaměstnance, pokud Umístění atribut neumožňuje hodnoty NULL. Plná závislost však není celý obraz, pokud jde o normalizaci. Musíte se ujistit, že vaše databáze je ve třetím normálním formátu (3NF). Více od Lifewire

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

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

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

  • Žena s výhledem na serverovnu

    Osobní vztahy v databázi

  • Stylizovaný vývojový diagram databáze

    Základy normalizace databáze

  • Muž s notebookem

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

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

    Co jsou to závislosti na databázi?

  • Graf na obrazovce počítače.

    Co je databázový vztah?

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

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

  • Detailní boční pohled na blond černou ženu v polovině 20. let, která dělá svůj projekt vývoje softwaru.  Sedí před stolním počítačem a usrkává kávu při práci na počítači.

    Co je Boyce-Codd normální forma (BCNF)?

  • Žena držící zprávu v kanceláři, detail

    Funkční závislost v databázi

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

    Atribut databáze definuje vlastnosti tabulky

  • Ženská ruka drží ruku otevřenou s ilustrovaným síťovým připojením nad ním

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

  • Počítačový analytik vytvářející databázi na notebooku

    Fakta vs. Dimenzionální tabulky v databázi

  • Databáze v počítači

    Jak referenční integrita zajišťuje konzistenci databáze

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

    Determinanty a jejich role v databázi

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

    Úvod do databázových vztahů

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ů)