Normalizarea relațiilor - studopediya

Normalizarea relațiilor - este de a aduce relația cu forma, elimină duplicarea, asigură coerența datelor stocate în baza de date, și de a reduce efortul necesar pentru a menține baza de date.

Mai multe forme normale distincte de relații. Să luăm în considerare primele trei dintre ele (cel mai adesea în dezvoltarea acestei baze de date este suficientă).

În primul rând forma normală. Raportul se numește normalizat sau dat la prima formă normală dacă toate atributele sale sunt simple, adică, nu poate fi divizată în continuare. De exemplu, raportul

nu în primă formă normală, ca un atribut IMPRIMARE poate fi divizat în PUBLISHING atribute PAGES AN.

STUDENT = (NUMBER. LAST, NUME, GROUP)

Este în primul rând sub formă normală, în cazul în care câmpul număr este o cheie primară simplă.

A doua formă normală. Raportul este dat a doua formă normală dacă este în prima formă normală, și fiecare cheie nu atribuie în totalitate dependentă funcțional pe cheia compozit.

Functional nu completează atributele cheie de dependență numita dependență, la care cheia de înregistrare corespunde unei anumite valori, doar o singură valoare nu este un domeniu cheie, în care câmpul este stocată ca o funcție din orice parte a unei chei compozite. De exemplu, raportul STUDENT stocat în prima și a doua forme normale.

Realizare = (NUMBER. Disciplina LAST. EST)

Este în primul rând sub formă normală și are un număr cheie compozit + disciplina. Acest raport nu este normal în a doua formă, ca atributul NAME este dependentă funcțional pe cheie NUMBER compozit domeniu. Pentru a aduce acest raport la a doua formă normală este necesar să se împartă în două relații conectate:

Realizare = (NUMBER. Disciplina. EVALUARE)

LIST = (NO. NUMELE).

Legătura dintre relația este efectuată de numărul de câmp.

A treia formă normală. Raportul este în a treia formă normală, în cazul în care este în a doua formă normală, și fiecare atribut non-cheie este independentă de tranzitiv cheie.

relație tranzitiv există în ceea ce privește, în cazul în care există două domenii non-cheie, dintre care primul depinde, iar a doua de la prima cheie. De exemplu, raportul este în STUDENT treia formă normală.

Disciplina = (NUME. Lector UCH_STEPEN GROUP)

Nu este în formă normală a treia, ca domeniu de UCH_STEPEN depinde de domeniul disciplinei, dar nu pe o cheie compozit, astfel încât raportul ar trebui să fie împărțită în două atitudini legate

Disciplina = (NUME. Lector GROUP)

FACULTATE = (lector. UCH_STEPEN).

Legătura dintre relația se desfășoară pe câmpul LECTOR.