Baza de date este o colecţie de date organizate într-o structură descrisă printr-un model conceptual (schemă).Un model conceptual cuprinde descrierea tuturor entităţilor unei baze de date împreună cu toate legăturile existente între ele.O entitate este un conţinut de sine stătător , o realitate obiectivă care există prin ea însăşi.Orice entitate este caracterizată prin propietăţile sale.În cadrul modelelor de date aceste propietăţi sunt reprezentate prin atribute.Entităţile la rândul lor , sunt reprezentate prin tipuri de entităţi.Un tip de entitate este o reprezentare în cadrul unui model de date care corespunde unei categorii de obiecte din lumea reală.
Bazele de date relaţionale sunt formate din relaţii, numite de obicei tabele.O tabelă este ceea ce îi spune numele - un tabel cu date.Tabela are un nume , coloane şi linii.
Coloanele - fiecare coloană din tabel are un nume unic şi conţine date diferite.Fiecare coloană are asociat un tip de date.Coloanele mai sunt numite uneori câmpuri sau atribute.
Liniile - Fiecare linie din tabel reprezintă o altă înregistrare.Datorită formatului tabelar, toate liniile au aceleaşi atribute.Liniile mai sunt numite şi tupluri.
Valori - Fiecare linie este formată dintr-un set de valori individuale care corespund coloanelor.Fiecare valoare trebuie să aibă tipul de dată specificat de coloana ei.
Chei - Se numeşte cheie a unei relaţii R un subset K al atributelor relaţiei R care satisface propietăţile :
1. Identificare unică - fiecare tuplă a relaţiei R este identificată în mod unic de valorile atributelor care compun cheia K
2. Neredondanţă - subsetul K este minimal în sensul că eliminarea oricărui atribut din K duce la pierderea propietăţii 1).
Într-o relaţie pot exista mai multe chei.Pentru fiecare relaţie din cadrul unei baze de date se desemnează dintre acestea , după anumite criterii o cheie privilegiată numită cheie primară.Cheia primară este acea cheie dintre cheile unei relaţii care este folosită în identificarea unică a tuplelor .
Asupra cheii primare SGBD-ul impune o serie de restricţii :
nu sunt admise valori ndefinite pentru atributele unei chei primare.Orice altă cheie a unei relaţii poate avea valori nedefinite pentru unele din atributele sale
nici o valoare a unui atribut dintr-o cheie primară nu poate fi modificată în cadrul operaţiilor de actualizare
În cadrul modelului de date relaţional legăturile dintre relaţii se realizează prin mecanismul de propagare a cheilor ceea ce ne conduce la conceptul de cheie străina cheie externă) .Un subset ,FK al unei relaţii R2 , este o cheie străină dacă :
există o relaţie R1 (nu neapărat distinctă) având o cheie K ;
pentru fiecare valoare FK din relaţia R2 există o valoare identică a cheii K din relaţia R1.
Exemplu :
CLIENTI
ClientId
Nume Adresă Oras
1 Perde Mihai Str.Horea,25 Cluj
2 Sitaş Voichiţa Str.Fântânele,40 Cluj
3 Moldovan Sorin Str.Titulescu,30 Cluj
POLITE
PolitaId ClientId Data
1 3 01/01/2005
2 1 12/05/2006
3 2 25/10/2005
4 1 13/11/2005
În tabela POLITE coloana ClientId reprezintă o cheie externă. ClientId este cheie primară în tabela CLIENTI , dar atunci când apare într-o altă tabelă , cum este POLITE , ea este referită ca şi cheie externă.
Scheme
Setul complet de proiecte pentru tabelele dintr-o bază de date se numeşte schema bazei de date.O schemă trebuie să prezinte tabelele şi coloanele acestora , tipurile de date din coloane şi trebuie şi trebuie să indice cheia primară a fiecărei tabele şi toate cheile externe.
Relaţii
Cheile externe reprezintă o relaţie între datele din două tabele. Într-o bază de date relaţională există trei tipuri de relaţii fundamentale.Relaţiile pot fi de tip unu-la-unu, unu-la-mai-mulţi sau mai-mulţi-la-mai-mulţi.
O relaţie unu-la-unu (1:1) - înseamnă că unei entităţi dintr-o tabelă îi corespunde o singură entitate din alta tabelă şi reciproc
Într-o relaţie unu-la-mai-mulţi (1:N) o linie dintr-o tabelă este legată la mai multe linii dintr-o altă tabelă.În aceste relaţii , tabela care conţine mai multe linii va avea o cheie externă la tabela cu o singură linie.
Într-o relaţie mai-mulţi-la-mai-mulţi (M:N) mai multe linii dintr-o tabelă sunt legate la mai multe linii dintr-o altă tabelă şi reciproc.
1:N 1:N M:N
Sistemul de gestiune al bazei de date
Sistemul de gestiune al bazei de date - SGBD este întregul ansamblu software care tratează toate cererile de acces la baza de date.SGBD cuprinde două facilităţi importante pentru proiectarea şi exploatarea bazelor de date :
facilităţi de descriere a datelor
facilităţi de manipulare a datelor
Facilităţile de descriere a datelor
Sunt materializate , în esenţă, prin limbajul de descriere a datelor - DDL (Data Description Language) .DDL serveşte pentru descrierea modelelor externe , a modelului conceptual şi a interfeţelor dintre cele trei nivele de organizare a bazei de date.
Facilităţile de manipulare a datelor
Se referă în principal la limbajele de manipulare a datelor - DML ( Data Manipulation Language) .Acestea constituie interfaţa dintre SGBD şi utilizatori.Un DML constă dintr-un set de comenzi primitive care corespund operaţiilor uzuale în exploatarea bazei de date cum sunt : formularea cererilor de acces la date (interogări), adăugarea, ştergerea şi actualizarea datelor.