Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 2184|Răspunde: 0

[Comunicare] Proiectarea bazelor de date relaționale: o înțelegere populară a celor trei paradigme

[Copiază linkul]
Postat pe 21.03.2024 10:53:13 | | | |
În timpul interviului, unii intervievatori vor întreba despre paradigma bazelor de date, am studiat baze de date la facultate înainte, dar nu am auzit de paradigmă sau profesorul a menționat-o și nu am fost atent?

În prezent există șase paradigme în bazele de date relaționale: prima paradigmă (1NF), a doua paradigmă (2NF), a treia paradigmă (3NF), paradigma Bass-Cod (BCNF), a patra paradigmă (4NF) și a cincea paradigmă (5NF, cunoscută și ca paradigma perfectă).

De obicei folosim prima paradigmă (1NF), a doua paradigmă (2NF) și a treia paradigmă (3NF), care sunt "cele trei paradigme" ce vor fi discutate în acest articol.

Primul Paradigm (1NF): Necesită ca fiecare coloană a tabelului bazei de date să fie un element atomic indivizibil.

Ilustra:



În tabelul de mai sus, nici coloana "Informații despre familie", nici "Informații școlare" nu îndeplinesc cerințele de atomicitate, deci nu îndeplinesc primul paradigm și sunt ajustate astfel:



Se poate observa că fiecare coloană ajustată este indivizibilă, deci satisface primul paradigm (1NF);

Paradigma 2 (2NF): Pe baza 1NF, atributele non-cod trebuie să depindă complet de codurile candidate (eliminarea dependenței parțiale a atributelor neprimare pe codul master pe baza 1NF)

Al doilea paradigm trebuie să asigure că fiecare coloană din tabelul bazei de date este legată de cheia primară, nu doar de o parte a cheii primare (în principal pentru cheile primare federate).

Ilustra:



În cazul prezentat în diagrama de mai sus, aceeași ordine poate conține produse diferite, astfel încât cheia primară trebuie să fie o combinație între "număr de comandă" și "număr de produs".

Totuși, se poate constata că cantitatea produsului, discountul și prețul produsului sunt toate legate de "numărul comenzii" și "numărul produsului", dar suma și timpul comenzii sunt doar legate de "numărul comenzii" și nu au legătură cu "numărul produsului".

Aceasta nu îndeplinește cerințele celei de-a doua paradigme și se ajustează astfel, care trebuie împărțită în două tabele:



Al treilea paradigm (3NF): Pe baza 2NF, orice atribut non-principal nu depinde de alte atribute non-principale (eliminând dependențele de transmisie pe baza 2NF)

Al treilea paradigm trebuie să asigure că fiecare coloană de date din tabelul de date este direct legată de cheia primară, nu indirect.

Ilustra:



În tabelul de mai sus, toate atributele depind complet de numărul de elevi, astfel încât a doua paradigmă este îndeplinită, dar "genul profesorului de clasă" și "vârsta profesorului de clasă" depind direct de "numele profesorului de clasă".

În loc de cheia principală "numărul elevului", trebuie făcute următoarele ajustări:



Astfel, cerințele celei de-a treia paradigme sunt îndeplinite.

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

BCNF (Bovce Codd Paradigma Normală Bacchus)

Al treilea model de corecție este prevenirea ca o coloană a cheii primare să depindă de alte coloane ale cheii primare. Când 3NF elimină unele dependențe de funcții și transferă dependențe de funcție de codul principal al atributului, se numește BCNF.

Caracteristic:

1. Toate atributele principale sunt dependențe complet funcționale față de fiecare cod

2. Toate atributele principale depind complet de funcție de fiecare cod care nu le conține

3. Nu există atribute care să fie complet funcționale și să depindă de vreun set de proprietăți non-cod

De exemplu, tabelul de inventar (numele depozitului, numele administratorului, nume produs, cantitate), cheia principală este (numele depozitului, nume administrator, nume produs), care satisface cele trei paradigme anterioare, dar există o dependență între numele depozitului și numele administratorului, astfel încât ștergerea unui depozit va duce la ștergerea administratorului, astfel încât BCNF nu este satisfăcut.

4NF A Patra Paradigmă

Atributele non-primare nu ar trebui să aibă valori multiple. Dacă există o valoare multiplă, aceasta încalcă a patra paradigmă. 4NF este un model relațional de restricție care nu permite dependențe multivalorate non-triviale și nedependente de funcție între proprietăți.

De exemplu, tabelul de informații de contact al utilizatorului (ID utilizator, telefon fix, telefon mobil), unde ID-ul utilizatorului este cheia principală, ceea ce satisface BCNF, dar un utilizator poate avea mai multe telefoane fixe sau mai multe telefoane mobile, atunci acest design este nerezonabil și ar trebui schimbat în (ID utilizator, tip de contact, număr de telefon).

Notă: Dacă se iau în considerare doar dependențele funcțiilor, paradigma cu cel mai mare grad de normalizare a tiparelor relaționale este BCNF. Dacă iei în considerare dependențele cu valori multiple, este 4NF.

5NF A Cincea Paradigmă

A cincea paradigmă este paradigma finală, eliminând dependența de conexiune în 4NF, iar a cincea paradigmă trebuie să îndeplinească următoarele cerințe:

1. A patra paradigmă trebuie îndeplinită

2. Tabelele trebuie să poată fi decompozabile în tabele mai mici, cu excepția cazului în care acele tabele au logic aceeași cheie primară ca tabelul original.

În aplicațiile practice generale, a cincea paradigmă nu trebuie luată în considerare.

Transferat din:Autentificarea cu hyperlink este vizibilă.
Referință:Autentificarea cu hyperlink este vizibilă.





Precedent:Alibaba Cloud înlocuiește rețeaua privată (switch virtual), rețeaua este inaccesibilă
Următor:Începe aplicația Guardian ASP.NET Core cu PM2
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com