În vederea implementării fizice a modelului conceptual, este important ca relaţiile Many to Many să fie rezolvate.
Într-o relaţie M:M există cel puţin un atribut care descrie relaţia.
Creând a treia entitate, numită entitate de intersecţie, se crează un loc pentru acel atribut.
Se crează entitatea de legatură;
Se crează entitatea de legatură;
Se crează noile relaţii;
Se dau nume acestor relaţii;
Daca e cazul, se adaugă atribute în entitatea de legătură;
Se crează un UID pentru entitatea de intersecţie.
Prin analiza CRUD identificăm cerinţele de
Prin analiza CRUD identificăm cerinţele de
creare, regăsire, actualizare şi ştergere a datelor.
Analiza CRUD ne ajută să observăm dacă:
am omis ceva din model;
am inclus în model ceva ce nu trebuie.
Urmărim în interviurile cu clientul sau în descrierile activităţilor, cuvintele care exprimă cele 4 operaţii: creare, regăsire, actualizare, ştergere.
Urmărim în interviurile cu clientul sau în descrierile activităţilor, cuvintele care exprimă cele 4 operaţii: creare, regăsire, actualizare, ştergere.
Dacă există cerinţe pentru care nu există date, s-ar putea ca modelul să fie incomplet.
Dacă există date asupra cărora nu se efectuează nici una dintre operaţiile CRUD, atunci acestea nu sunt necesare pentru afacere.
Identificatorul unic poate fi format din:
Identificatorul unic poate fi format din:
o valoare, sau
o combinaţie de valori
şi permite utilizatorului să identifice în mod unic o anumită instanţă.
Atunci când un UID este alcătuit dintr-un singur atribut, se numeşte simplu.
Dacă un UID este alcătuit dintr-o combinaţie de atribute, se numeşte compus.
Un UID creat special pentru a numerota unic fiecare instanţă se numeşte artificial.
Uneori UID este o combinaţie dintre un atribut şi o relaţie.
Uneori UID este o combinaţie dintre un atribut şi o relaţie.
Care este UID-ul entităţii ACCOUNT?
În transferurile bancare se transmit întotdeauna atât contul clientului cât şi cel al băncii.
Atunci când un UID este o combinaţie între un atribut şi o relaţie barată putem considera că UID-ul este alcătuit dintr-un atribut şi UID-ul celeilalte entităţi din relaţie.
În cazul unei entităţi de intersecţie UID poate fi o combinaţie a UID ale entităţilor care se aflau iniţial în relaţia M:M. Aceasta se reprezintă în diagramă prin bararea relaţiilor.
În cazul unei entităţi de intersecţie UID poate fi o combinaţie a UID ale entităţilor care se aflau iniţial în relaţia M:M. Aceasta se reprezintă în diagramă prin bararea relaţiilor.
Pot exista mai mulţi UID.
Pot exista mai mulţi UID.
unul este ales ca UID primar (ex. student ID);
ceilalţi UID sunt numiţi secundari.
În exemplul alăturat prima entitate are un UID secundar, a doua entitate are doi: badge number, identificator unic secundar simplu si first name, last name, identificator unic secundar compus.
Normalizarea se referă la procesul de creare a unei structuri relaţionale eficiente, flexibile care aşează fiecare dată într-un singur loc, care este şi cel mai potrivit loc, astfel încât operaţiile de adăugare, modificare, ştergere să se facă într-un singur tabel.
Normalizarea se referă la procesul de creare a unei structuri relaţionale eficiente, flexibile care aşează fiecare dată într-un singur loc, care este şi cel mai potrivit loc, astfel încât operaţiile de adăugare, modificare, ştergere să se facă într-un singur tabel.
FLEXIBILITATEA DATELOR
FLEXIBILITATEA DATELOR
Datele vor fi pastrate în locul cel mai bun şi vor putea fi vizualizate în diverse feluri.
INTEGRITATEA DATELOR
Normalizarea asigură integritatea datelor în operaţii de ştergere, adăugare, actualizare.
EFICIENŢA
Nu vor exista date redundante. Se va face economie de spaţiu.
UN ATRIBUT NU POATE AVEA VALORI CARE SE REPETĂ
Analizaţi entităţile de mai jos şi decideţi dacă respectă prima formă de normalizare.
Analizaţi entităţile de mai jos şi decideţi dacă respectă prima formă de normalizare.
ORICE ATRIBUT CE NU E UID SĂ DEPINDĂ DE ÎNTREGUL UID
Se aplică în mod special entităţilor care au un UID compus din mai multe atribute sau dintr-un attribut şi o relaţie.
Acest exemplu respecta forma 2 de normalizare.
Acest exemplu respecta forma 2 de normalizare.
În acest ERD, bank_location depinde numai de bancă, nu şi de contul persoanei şi astfel încalcă Forma de Normalizare 2
Durata depinde numai de SONG.
Durata depinde numai de SONG.
Event_date depinde numai de eveniment.
UN ATRIBUT CE NU E UID NU TREBUIE SĂ DEPINDĂ DE ALT ATRIBUT NON-UID.
În acest exemplu, store adress depinde de store name.
În acest exemplu, store adress depinde de store name.
Soluţia acestei probleme este să creăm o nouă entitate, STORE, care va conţine cele două atribute.
Orice afacere are restricţii ce pot fi aplicate valorilor unor atribute sau asupra relaţiilor dintre entităţi. Acestea se numesc CONSTRÂNGERI.
Orice afacere are restricţii ce pot fi aplicate valorilor unor atribute sau asupra relaţiilor dintre entităţi. Acestea se numesc CONSTRÂNGERI.
ARCele sunt un mod de a reprezenta relaţiile mutual exclusive:
pentru fiecare instanţă numai una dintre relaţii este validă.