Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Ce este o baza de date relationala?

access



+ Font mai mare | - Font mai mic



Ce este o baza de date relationala

Notiunea de baza de date se se foloseste pentru a desemna o colectie de date organizate in asa fel incat sa poata fi accesate, regasite si utilizate intr-un mod cat mai simplu. Elementul principal de organizare a datelor intr-o baza de date este tabelul. O baza de date este formata din unul sau mai multe tabele, care alcatuiesc o colectie de tabele cu relatii intre ele, de unde vine si numele de baza de date relationala. De exemplu, pentru gestiunea unui depozit de produse farmaceutice ar fi necesar sa se creeze o baza de date care sa contina urmatoarele tabele:



Clienti - pentru inregistrarea informatiilor referitoare la clientii carora li se livreaza produse farmaceutice din depozit.

Produse - pentru inregistrarea informatiilor referitoare la produsele farmaceutice care se afla in depozit.

Comenzi - pentru inregistrarea informatiilor referitoare la comenzile care se primesc de la clienti, pentru diferite produse farmaceutice.

Un tabel seamana mult cu o foaie de calcul Excel, fiind alcatuit din linii si coloane. De exemplu, tabelul Clienti ar putea arata ca in figura de mai jos.

Liniile unui tabel dintr-o baza de date se numesc inregistrari (records), sau articole. In tabelul Clienti, fiecare inregistrare contine informatii despre un anumit client. In ceea ce priveste celelalte tabele din baza de date, fiecare inregistrare din tabelul Produse contine informatii despre un anumit produs farmaceutic, iar fiecare inregistrare din tabelul Comenzi contine informatii despre o anumita comanda primita de la un client pentru un anumit produs farmaceutic. Coloanele unui tabel dintr-o baza de date se numesc campuri (fields), fiecare camp reprezentand aceeasi categorie de date pentru toate inregistrarile. In acest fel, exista o deosebire esentiala intre coloanele unei foi de calcul si campurile unei baze de date. Aceasta deosebire consta tocmai in faptul ca un camp contine acelasi tip de date pentru toate inregistrarile. O inregistrare dintr-un tabel este alcatuita din mai multe campuri, fiecare camp continand o informatie specifica in cadrul inregistrarii. De exemplu, in tabelul Clienti, campul al doilea contine numele clientului, campul al treilea contine localitatea unde se afla clientul, iar campul al patrulea contine adresa clientului in localitatea respectiva. Asa cum am aratat in capitolul 6, o foaie de calcul Excel seamana cu o baza de date alcatuita dintr-un singur tabel, liniile fiind considerate inregistrari, iar coloanele fiind considerate campuri. Pe baza acestei asemanari, in capitolul 6 au fost definite si operatii specifice bazelor de date, care se pot folosi pentru a opera asupra datelor dintr-o foaie de calcul. Totusi, o foaie de calcul este doar asemanatoare cu o baza de date alcatuita dintr-un singur tabel, iar operatiile Excel pentru prelucrarea bazelor de date sunt doar niste imitatii. Access este un sistem veritabil pentru prelucrarea bazelor de date relationale, care va ajuta sa stocati, sa regasiti, sa gestionati si sa administrati informatii in fisiere de tip baza de date.

In exemplul anterior, primul camp din tabelul Clienti este un cod numit codul clientului (cod_c). Acest cod identifica in mod unic fiecare client. Definirea unui astfel de camp nu este obligatorie, dar este foarte utila daca vreti sa identificati fiecare client cu ajutorul unui singur camp. Un astfel de camp poate fi folosit pentru a defini o cheie primara (primary key) pentru acest tabel. Daca nu exista un astfel de camp, cheia primara se poate defini cu ajutorul mai multor campuri, astfel incat valoarea cheii primare (alcatuita din setul de valori corespunzatoare ale campurilor componente) sa determine in mod unic fiecare inregistrare. De exemplu, daca nu ar exista campul cod_c in tabelul Clienti, pentru a defini o cheie primara s-ar putea folosi campurile "Nume", si "Localitate", iar daca exista doi clienti cu acelasi nume in aceeasi localitate, mai este necesar un camp, care ar putea fi "Adresa", sau "telefon".

In tabelul Produse exista un camp asemanator numit codul produsului (cod_p), care determina in mod unic fiecare produs. Daca nu ar exista acest camp, pentru determinarea fiecarui produs ar fi necesare trei campuri: denumirea produsului farmaceutic (Denumire), forma de prezentare (Forma_prez) si concentratia substantei active (Concentratie).

O relatie intre doua tabele ale unei baze de date relationale se poate stabili prin existenta unui camp comun in cele doua tabele. In exemplul din figura de mai jos exista o relatie intre tabelul Comenzi si tabelul Clienti pe baza campului comun cod_c (codul clientului). Prin aceasta relatie, unei comenzi din tabelul Comenzi ii corespunde un singur client din tabelul Clienti, si anume clientul de la care s-a primit comanda respectiva. De asemenea, exista o relatie intre tabelul Comenzi si tabelul Produse pe baza campului comun cod_p (codul produsului). Prin aceasta relatie, unei comenzi din tabelul Comenzi ii corespunde un singur produs din tabelul Produse, si anume produsul farmaceutic pentru care s-a facut comanda.

Relatiile de mai sus sunt de tip "one-to-one" si aceste relatii sunt foarte importante in acest caz, deoarece fiecare inregistrare din tabelul Comenzi determina in mod unic un anumit client din tabelul Clienti, care comanda un anumit produs din tabelul Produse. Sagetile din figura de mai sus indica aceste relatii in cazul unei comenzi prin care clientul JF03 comanda ampicilina sub forma de pulbere sau suspensie, in concentratie de 250mg/5ml.

Uneori clientii se intereseaza daca anumite produse exista in depozit si sub ce forma de prezentare, pentru a putea face ulterior comenzi precise. In figura de mai jos, in tabelul Chestionar sunt inregistrate astfel de intrebari din partea clientilor. De exemplu, pe clientul JF03 il intereseaza produsul Rudotel, iar pe clientul CF03 il intereseaza Ampicilina. In acest caz relatia dintre tabelul Chestionar si tabelul Produse se stabileste pe baza campului Denumire. Aceasta relatie este de tipul "one-to-many", deoarece unei inregistrari din tabelul Chestionar ii corespund mai multe inregistrari in tabelul Produse. De exemplu, pe clientul CF03 il intereseaza ampicilina sub orice forma de prezentare (capsule, pulbere, suspensie, drajeuri, comprimate) si in orice concentratie. Clientul va primi un raport cu toate tipurile de ampicilina existente in depozit. Daca tabelul Produse este intr-o baza de date publica, accesibila prin Internet, clientul poate accesa acest tabel direct si poate primi imediat un raport, fara nici o interventie din partea administratorului bazei de date.



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 9988
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved