CATEGORII DOCUMENTE |
Modelul relational
Modelul relational a fost introdus de E. F. Codd si reprezinta astazi cel mai utilizat model pentru gestionarea bazelor de date.
Modelul are la baza conceptul de relatie definit in teoria matematica a multimilor ca fiind o submultime a produsului cartezian al mai multor multimi: R a M1 x M2 x . x Mn.
Familia de multimi pe care este definita relatia se numeste domeniu, atunci cand M1 = M2 = . = Mn se spune ca relatia este omogena. Numarul n se numeste gradul relatiei, un element al relatiei t = (m1, m2, ., mn) se numeste tuplu, iar numarul de tupluri indica cardinalitatea relatiei.
Schema unei relatii este formata din numele relatiei, atributele acesteia si restrictiile de integritate.
Domeniul reprezinta multimea tuturor valorilor posibile care definesc o anumita proprietate a unui obiect. Atributul reprezinta multimea valorilor existente la un moment dat in coloana pe care acesta o desemneaza in cadrul unei relatii. Intr-o relatiei pot exista mai multe atribute care sa ia valori in acelasi domeniu.
Relatia STUDENTI se scrie in felul urmator
Nr_matricol |
Nume_student |
Localitate |
Popa Dan |
Titu |
|
Vlad Andrei |
Ploiesti |
|
Radu Ioana |
Targoviste |
|
Sima Ileana |
Moreni |
Relatiile se prezinta sub forma unor tabele, supuse urmatoarelor restrictii:
- fiecare coloana din tabel contine acelasi fel de valori;
- in tabel ordinea liniilor nu este stabilita si in acelasi timp nu se admit valori duplicate;
- orice valoare este un numar sau un sir de caractere (nu are cum sa fie un ansamblu);
- orice coloana este identificata printr-un nume care reprezinta atributul relatiei.
O baza de date, privita din punct de vedere al modelului relational, este vazuta ca o colectie de tabele (relatii), in care fiecare coloana reprezinta un atribut distinct, iar fiecare rand, un tuplu distinct.
Tuplurile unei relatii se pot identifica in mod unic prin intermediul valorilor unuia sau mai multor atribute, care joaca rolul de cheie primara a relatiei respective.
Orice relatie poseda cel putin o cheie. Cand aceasta cheie este alcatuita dintr-un singur atribut, poarta numele de cheie simpla, iar atunci cand este formata din mai multe atribute ea se numeste cheie compusa.
Cheia primara a unei tabele este un atribut sau un grup de atribute care permite identificarea fara ambiguitate a fiecarui tuplu din tabela. La alegerea unei astfel de chei, administratorul bazei de date trebuie sa aiba in vedere criterii prin care sa asigure identificarea efectiva a tuplurilor (lungime, natura).
Cheia primara trebuie sa verifice urmatoarele trei restrictii:
- unicitatea: o cheie identifica un singur tuplu al relatiei;
- compozitia minimala: atunci cand cheia primara este compusa, nici un atribut cheie nu poate fi eliminat fara distrugerea unicitatii tuplului in cadrul relatiei;
- valorile non-nule: valorile atributului sau ale ansamblului de atribute care desemneaza cheia primara sunt intotdeauna specificate, deci nenule; nici un atribut din compozitia cheii primare nu poate avea valori nule.
Daca intr-o relatie exista mai multe combinatii de atribute care confera unicitatea tuplului, acestea sunt denumite chei candidate. Atunci cand o cheie candidata nu este cheie primara este considerata cheie alternativa (secundara).
Legaturile intre tuplurile din relatii diferite se realizeaza prin atribute sau combinatii de atribute numite chei straine (externe).
Reflectand un aspect din realitate, relatiile se spun unor restrictii, ce pot fi de doua feluri:
Ø restrictii de integritate - depind de semantica valorilor domeniilor si impun relatiilor sa se supuna regulilor:
- integritatea entitatii - valorile cheii primare trebuie sa fie diferite de zero, pentru ca altfel, cheia respectiva nu va mai fi identificator;
- integritatea referirii - valorile unei chei externe trebuie sa refere tuplurile unei alte relatii.
Ø alte restrictii - se aplica asupra domeniilor si reflecta anumite corelatii de ordin valoric (egalitate, inegalitate).
Avantajele modelului relational in comparatie cu celelalte tipuri de modele sunt:
- independenta sporita a programelor de aplicatie fata de modul de reprezentare interna a datelor si de metodele de acces la date;
- definirea unei structuri conceptuale optime, minimalizand redundanta datelor si erorile la actualizare;
- utilizarea unor limbaje procedurale bazate pe algebra relationala si a unor limbaje neprocedurale care contribuie la imbunatatirea comunicarii dintre sistem si neinformaticieni.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1725
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved