Modelul relațional (RM) se bazează pe conceptul de „relație» (relatie), este cel mai frecvent astăzi.
- simplitate, prezența unui mic set de abstractizari care permit domenii simulate și permit definiții formale precise, fiind intuitiv;
- o instrumente matematice bine dezvoltate și puternice;
- posibilitatea de operațiuni asupra datelor fără a cunoaște organizarea lor fizică.
Dezavantajele modelului relațional:
- eficiență scăzută de stocare a datelor în comparație cu alte modele;
- performanță insuficientă la punerea în aplicare a anumitor operațiuni;
- vedere limitată a structurilor de date complexe;
- incapacitatea de a reflecta în mod adecvat semantica domeniului de aplicare.
Conceptele de bază ale modelului sunt: tipul de date, domeniu, atribut, tuplu, cheia primară și atitudine.
Tipul de date specifică un set de valori și operațiile care pot fi aplicate la valorile.
Sub domeniu să înțeleagă setul de valori admisibile ale unui tip simplu. Toate elementele domeniului sunt un tip de date și îndeplinesc condiția logică. Domeniul Element - un șir de caractere numărul, data, etc ...
Atribut are același înțeles ca proprietate a unui obiect în ER- model t. E. este unitatea de bază a conceptului de structură, care servește la clarificarea identificare, clasificare, caracteristici numerice sau exprimare statutul entității. Valorile atributelor se referă la unul dintre domeniile. Un atribut are un nume și o valoare. Valorile atributelor constituie cea mai mare parte a informațiilor stocate în baza de date.
Schemele sunt numite seturi de perechi (Ai, Di), i = 1, k, unde Ai - relații rang - numele atributului, Di - nume de domeniu, k. De exemplu: Elevii ((nume, nume de persoane) (vârstă, un număr de 17 până la 59), (numărul pașaportului, întreg)) rang = 3.
Schema de baze de date relaționale este o colecție de relații circuite și cuprinde următoarele componente:
S = , unde A - setul de atribute, D - o multitudine de domenii, R - set de nume de relații, Rel - o multitudine de relații circuite, F - set de constrângeri.
relație tuplu - este un set de perechi de forma „numele atributului, valoarea atributului“ atribut al relației cu fiecare dintre ele, și doar o parte din timp procesiunea. # (Sasha, 19, 222222) sau (Katja, 20, 353453) sau (Anastasia, 18, 424242)
Atitudinea - este un set de tuple care corespunde unui relații de circuit. Elementele de relații sunt tuple.
# R =
Proprietățile fundamentale ale relațiilor:
- Relațiile nu conțin tupluri duplicate.
- Fiecare relație are o cheie (atribut set de atribute) ale căror valori identifică în mod unic fiecare rând a relațiilor de masă.
- Ordinea tuple într-o relație nu contează.
- Ordinea atributele relației nu contează, așa cum sunt numite.
- Valorile tuturor atributelor sunt atomice indivizibile, t. K. Un domeniu de definiție, nu poate conține tipuri complexe. Bazele de date relaționale sunt permise doar pentru normalizarea relațiilor.
Pentru comunicarea între diferite raporturi utilizate cheie externă concept. O cheie externă se numește atribut (set de atribute), care este cheia Ak în altă privință, R1 și valorile sale aparțin domeniului Dk relație R2, adică raportul, care definește cheia externă se referă la o atitudine diferită în care același atribut este cheia primară.
Componentele modelului de date relațională (modelul conform datelor este format din 3 părți)
- descrierea structurii de date,
- Descrierea operațiilor asupra datelor (partea de manipulare)
- descriere constrângeri de integritate a bazei de date. adică condițiile de corectitudinea și coerența datelor.
Pentru o descriere a structurilor de date utilizate numai pentru normalizarea relațiilor. Pentru o descriere a operațiunilor, două mecanisme sunt utilizate pe date: algebra relațională și calculul relațional. Primul se bazează pe teoria mulțimilor și calculul relațional - în unitatea logică a predicatelor de ordinul întâi de calcul.
Modelul ar trebui să fie efectuată 2 condiții de bază de integritate:
- Orice tuplu orice relație trebuie să se facă distincție între oricare alt tuplu al acestei relații;
- Pentru fiecare valoare cheie externă în ceea ce privește un tuplu X trebuie găsită cu aceeași valoare cheie primară în raport cu Y la care se referă.
SRMs sunt cele mai frecvente în acest moment. În CDR-uri să fie menținută integritatea datelor. În cazul în care schema de SRM eșuează, aceasta nu garantează că integritatea. Încălcarea integrității numite anomalii. Anomaliile pot fi cauzate de relații de redundanță. Pentru a elimina schemele de redundanță utilizate normalizarea relațiilor.
Prezentarea sistemului DDB în orice etapă a acestui proces se numește o formă normală. Fiecare formă normală corespunde unei anumite limite stabilite, iar raportul este într-o formă normală dacă satisface setul de limitări inerente. SRM a lansat o secvență de forme normale:
- Prima formă normală (1NF);
- A doua formă normală (2NF);
- A treia formă normală (3NF);
- Forma normală Boyce - Codd (BCNF);
- A patra formă normală (4NF);
- A cincea formă normală sau forma compusului de proiecție (5NF sau PJ / NF).
Proprietățile de bază ale formelor normale:
- Fiecare succesive NF îmbunătățește proprietățile celui precedent;
- În trecerea la următoarele proprietăți anterioare NF NF sunt reținute.
Să ne dea câteva definiții:
Dependența funcțională. În ceea ce privește atributul R Y este dependent funcțional de atributul X - X, dacă fiecare valoare corespunde exact o valoare Y. denotat y: x → y (x determină funcțional y)
dependența funcțională completă. Dependența funcțională a y: x → y este completă dacă atributul Y nu este dependent funcțional pe orice subset X precis
Tranzitiv dependență funcțională. Dependența funcțională a y: x → y este declarat a fi tranzitiv dacă există un Z atribut, că există relații funcționale x → z și z → y (dependență inversă este absentă).
cheie posibile. O posibilă relație cheie se numește atribut atomic sau compozit, cu valori determina valoarea deplin functional, toate celelalte atribute ale unei relații.
atribut non-cheie - atributul oricărei relații care nu este parte a cheii primare.
atribute independente. Reciproc Două sau mai multe atribute numite reciproc independente, dacă nici unul dintre ei este independentă de alte atribute funcționale.
Determinanii. Determinant este orice atribut, care este dependentă în întregime funcțional pe un alt atribut.
normalizare
Prima formă normală (1NF)
Un tabel este în primul formă normală, dacă fiecare dintre atributul său este atomic. Prin expresia „atributul atomic“ înseamnă că atributul poate conține doar o singură valoare. Astfel, nu există nici un tabel 1NF, în domeniile care pot fi stocate liste de valori. Pentru a aduce masa la masa 1NF este de obicei necesară pentru a rupe în tabele separate.
Notă: În modelul relațional, raportul este întotdeauna 1 (sau mai mare), sub formă normală, în sensul că alte relații nu sunt luate în considerare în modelul relațional. Aceasta este definiția însăși a atitudinii implică în mod evident 1NF.
A doua formă normală (2NF)
Masa este în a doua formă normală dacă este în prima formă normală, și, astfel, orice atribut său nu este o parte a cheii primare, complet dependentă funcțional pe cheia primară. dependență Functional completă înseamnă că atributul este dependent funcțional pe întreaga cheie compozit primar, dar nu este în funcție de oricare dintre atributele sale constitutive (părți). Sau, cu alte cuvinte: în 2NF nici un atribut non-cheie, în funcție de partea cheii compozit (+ 1NF îndeplinite condițiile).
A treia formă normală (3NF)
Tabelul stocat în a treia formă normală (3NF), în cazul în care este în a doua formă 2NF normală și în care atribuie orice non-cheie depinde doar de cheia primară (cheie primară, PK) (cu alte cuvinte, un fapt este stocat într-un singur loc).
Astfel, raportul este în 3NF dacă și numai dacă este în 2NF și fără dependențe tranzitive de atribute non-cheie din cheie. Non-cheie atribute dependență tranzitive de cheie este următoarea: A → B și B → C, unde A - setul de atribute cheie (Key), B și C - o multitudine de diferite atribute non-cheie.
Pentru a rezolva problemele practice, în majoritatea cazurilor, forma normală a treia este suficientă. Procesul de proiectare a unei baze de date relațională, de obicei, se termină aducerea la 3NF.
Forma normală Boyce - Codd (BCNF)
Aceasta este o modificare a treia formă normală (în unele surse se numește Boyce formă 3NF - Codd).
Un tabel este în BCNF, în cazul în care este în 3NF, și, astfel, nu exista relații funcționale ale atributului cheii primare a atributelor non-cheie. Tabelul poate fi în 3NF, dar nu și în BCNF, un singur caz: dacă are, în plus față de cheia primară, dar cel puțin o cheie candidat. Toate în funcție de atributele cheie primare trebuie să fie potențiale relații cu cheie. Dacă această condiție nu este îndeplinită, pentru că ei au creat o atitudine separată. Pentru esența în concordanță cu BCNF, ar trebui să fie în a treia formă normală. Orice entitate cu singura cheie posibilă corespunzătoare cerințelor din a treia formă normală, va fi în mod automat în BCNF.
A patra formă normală (4NF)
Un tabel este în 4NF, în cazul în care acesta este în BCNF și nu conține dependențe multivaloare non-triviale. relație multiplă evaluate nu este funcțional, există în cazul în care din faptul că tabelul conține unele șir X, rezultă că tabelul fie sigur, există unele Y. linie definită Aceasta este, masa este în 4NF, în cazul în care toate dependențele multivaloare sunt funcțional.
A cincea formă normală (5NF)
Un tabel este în 5NF, în cazul în care acesta este în 4NF și fiecare conexiune de dependență multivaloare este banală. forma normală a cincea este mai mult de un studiu teoretic, și aproape niciodată utilizate în proiectarea efectivă a bazei de date. Acest lucru se datorează complexității definiției dependențele „proiecție - compuși“ ca o afirmație a unui astfel de relație ar trebui să fie făcută pentru toate stările posibile de baze de date.
Domeniul-cheie sub formă normală (DKNF)
forma normală a șasea (6NF)
Tabelul este în 6NF, dacă este în 5NF și satisface cerința absenței dependențe netriviale. 6NF adesea identificat cu DKNF.