Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 2184|Odpověď: 0

[Komunikace] Relační návrh databáze: populární chápání tří paradigmat

[Kopírovat odkaz]
Zveřejněno 21.03.2024 10:53:13 | | | |
Během pohovoru se někteří tazatelé ptají na databázové paradigma, já jsem databáze studoval na vysoké škole, ale o paradigmatu jsem neslyšel, nebo to učitel zmínil a nevěnoval jsem tomu pozornost?

V relačních databázích existuje v současnosti šest paradigmat: první paradigma (1NF), druhé paradigma (2NF), třetí paradigma (3NF), Bass-Cod paradigma (BCNF), čtvrté paradigma (4NF) a páté paradigma (5NF, známé také jako perfektní paradigma).

Obvykle používáme první paradigma (1NF), druhé paradigma (2NF) a třetí paradigma (3NF), což jsou "tři paradigmata", o kterých se v tomto článku diskutuje.

První paradigma (1NF): Vyžaduje, aby každý sloupec tabulky databáze byl nedělitelným atomovým datovým prvkem.

Ilustrovat:



V tabulce výše ani sloupce "Rodinné informace" ani "Informace o škole" nesplňují požadavky na atomicitu, takže nesplňují první paradigma, a jsou upraveny následovně:



Je vidět, že každý upravený sloupec je nedělitelný, takže splňuje první paradigma (1NF);

Paradigma 2 (2NF): Na základě 1NF musí být nekódové atributy zcela závislé na kandidátních kódech (eliminovat částečnou závislost funkcí neprimárních atributů na hlavním kódu na bázi 1NF)

Druhý model musí zajistit, že každý sloupec v databázové tabulce je spojen s primárním klíčem, nikoli pouze jeho částí (hlavně u federovaných primárních klíčů).

Ilustrovat:



V případě znázorněném na výše uvedeném diagramu může stejná objednávka obsahovat různé součiny, takže primární klíč musí být kombinací "číslo objednávky" a "číslo produktu".

Lze však zjistit, že množství produktu, sleva a cena produktu souvisejí s "číslem objednávky" a "číslem produktu", zatímco množství objednávky a doba objednávky jsou pouze spojeny s "číslem objednávky" a nemají nic společného s "číslem produktu".

To nesplňuje požadavky druhého paradigmatu a upravuje se následovně, který je třeba rozdělit do dvou tabulek:



Třetí paradigma (3NF): Na základě 2NF žádný atribut ne-main nezávisí na jiných ne-hlavních atributech (eliminuje závislosti přenosu na základě 2NF)

Třetí paradigma musí zajistit, že každý sloupec dat v datové tabulce je přímo spojen s primárním klíčem, nikoli nepřímo.

Ilustrovat:



V tabulce výše jsou všechny atributy zcela závislé na počtu studentů, takže druhý vzor je splněn, ale "pohlaví třídního učitele" a "věk třídního učitele" přímo závisí na "jménu třídního učitele".

Místo hlavního klíče "studentské číslo" je třeba provést následující úpravy:



Tímto způsobem jsou splněny požadavky třetího paradigmatu.

ps:如果把上表中的班主任姓名改成班主任教工号可能更确切,更符合实际情况,不过只要能理解就行。

BCNF (Bovce Codd Normal Form Bacchus Paradigm)

Třetím paradigmatem korekce je zabránit tomu, aby jeden sloupec primárního klíče závisel na jiných sloupcích primárního klíče. Když 3NF odstraní některé závislosti funkcí a závislosti přenosových funkcí na hlavním atributovém kódu, nazývá se BCNF.

Charakteristický:

1. Všechny hlavní atributy jsou zcela funkční závislosti na každém kódu

2. Všechny hlavní atributy jsou zcela závislé na jednotlivých funkcích kódu, který jej neobsahuje

3. Neexistují žádné atributy, které by byly plně funkční a závislé na žádné sadě nekódových vlastností

Například tabulka zásob (název skladu, jméno administrátora, název produktu, množství), primární klíč je (název skladu, název administrátora, název produktu), který splňuje předchozí tři paradigmata, ale existuje závislost mezi názvem skladu a jménem administrátora, takže smazání skladu způsobí smazání administrátora, takže BCNF není spokojen.

4NF Čtvrté paradigma

Neprimární atributy by neměly mít více hodnot. Pokud existuje vícehodnota, porušuje to čtvrté paradigma. 4NF je restrikční relační vzor, který neumožňuje netriviální a nefunkčně závislé vícehodnotové závislosti mezi vlastnostmi.

Například tabulka kontaktních informací uživatele (uživatelské ID, pevná linka, mobilní telefon), kde uživatelské ID je primární klíč, který splňuje BCNF, ale uživatel může mít více pevných nebo mobilních telefonů, pak je tento design nerozumný a měl by být změněn na (uživatelské ID, typ kontaktu, telefonní číslo).

Poznámka: Pokud se zohlední pouze závislosti funkcí, paradigma s nejvyšší mírou normalizace relačních vzorů je BCNF. Pokud vezmete v úvahu vícehodnotové závislosti, je to 4NF.

5NF Pátý paradigmat

Pátý paradigma je konečný, čímž eliminuje závislost na spojení v 4NF, a pátý paradigma musí splňovat následující požadavky:

1. Čtvrté paradigma musí být splněno

2. Tabulky musí být rozložitelné na menší tabulky, pokud tyto tabulky logicky nemají stejný primární klíč jako původní tabulka.

V obecných praktických aplikacích není nutné zohledňovat pátý paradigmat.

Převedeno z:Přihlášení k hypertextovému odkazu je viditelné.
Odkaz:Přihlášení k hypertextovému odkazu je viditelné.





Předchozí:Alibaba Cloud nahrazuje privátní síť (virtuální switch), která je nedostupná
Další:Spusťte aplikaci Guardian ASP.NET Core s PM2
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com