Domov Databáze Jaká je druhá normální forma (2nf)? - definice z techopedie

Jaká je druhá normální forma (2nf)? - definice z techopedie

Obsah:

Anonim

Definice - Co znamená druhá normální forma (2NF)?

Druhý normální tvar (2NF) je druhým krokem v normalizaci databáze. 2NF staví na první normální formě (1NF).

Normalizace je proces organizace dat v databázi tak, aby splňoval dva základní požadavky:

  • Neexistuje žádná redundance dat (všechna data jsou uložena pouze na jednom místě).
  • Závislosti na datech jsou logické (všechny související datové položky jsou uloženy společně).

Tabulka 1NF je ve formě 2NF tehdy a jen tehdy, pokud všechny její nepřímé atributy jsou funkčně závislé na celku každého kandidáta na klíč.

Techopedia vysvětluje druhou normální formu (2NF)

Po splnění požadavků 1NF vyžaduje 2NF návrháře databáze, aby provedli následující:

  1. Rozdělte všechna data, což má za následek mnohočetné vztahy, a uložte je jako samostatné tabulky. Například v databázi používané školní aplikací jsou dvě tabulky STUDENT a SUBJECT. V reálném životě student bere několik předmětů současně, zatímco předmět studuje několik studentů. To jsou vztahy mezi mnoha lidmi. 2NF uvádí, že tento vztah musí být rozdělen do více než dvou výše uvedených tabulek (STUDENT a SUBJECT). Jedním ze způsobů, jak je rozdělit, je zavedení třetí tabulky, která obsahuje sloupce Student_ID, Subject_ID, Semester a Year. Tímto způsobem neexistuje přímý vztah mezi STUDENTEM a SUBJECT, protože všechny vztahy jsou vytvářeny nepřímo prostřednictvím třetí tabulky.
  2. Vytvářejte vztahy mezi tabulkami pomocí cizích klíčů. Například databáze banky obsahuje dvě tabulky: CUSTOMER_MASTER (pro ukládání podrobností o zákaznících) a ACCOUNT_MASTER (pro ukládání podrobností o bankovních účtech, včetně toho, který zákazník drží který účet). Musí existovat způsob, jak propojit obě tabulky a zjistit, kdo je pro každý účet. Způsob, jak toho dosáhnout, je pomocí cizího klíče, což je sloupec v tabulce ACCOUNT_MASTER směřující na odpovídající sloupec v tabulce CUSTOMER_MASTER.

Tabulka, pro kterou neexistují žádné dílčí funkční závislosti na primárním klíči, může nebo nemusí být ve 2NF. Kromě primárního klíče může tabulka obsahovat další kandidátní klíče; je nutné prokázat, že žádné non-prvořadé atributy nemají závislost na klíči na žádném z těchto kandidátních klíčů.

Jaká je druhá normální forma (2nf)? - definice z techopedie