- Baza de date (BD) - este un grup de fișiere de diferite tipuri cu datele unei organizații, care participă împreună într-un proces de prelucrare cu un grup de aplicații, proiectate pentru gestionarea și regăsirea eficientă a datelor.
- BD sunt create și întreținute cu softuri numite Sisteme de Gestiune a Bazelor de Date (SGBD).
Exemple de SGBD : Microsoft Access, Visual Foxpro, Oracle, MySQL, SAP
- aplicațiile (programele) care gestionează o bază de date este formată din comenzile SGBD.
- clasificarea bazelor de date :
1. BD individuale - sunt baze mici, folosite de obicei de un singur utilizator, pe un PC.
2. BD partajate - baze gazduite pe un server într-o reţea LAN a unei firme.
3. BD distribuite - sunt folosite de firmele mari cu filiale în diverse localităţi, BD având fișierele stocate pe mai multe servere într-o rețea WAN sau MAN, astfel încât conducerea companiei are acces la datele din fiecare filială.
1. Fişiere tabel (eng. table) - sunt principalele fișiere în care se stochează datele organizației, restul fișierelor având roluri ajutătoare.
- tabelele din BD sunt "mai inteligente" decât cele proiectate cu Microsoft Excel.
- fișierele tabel conțin înregistrarea de structură și date organizate sub formă de câmpuri, înregistrări de date și coloane. Înregistrările au același număr de octeți.

2. Fişiere index - ajută la afișarea datelor din tabele în altă ordine decât au fost introduse, metoda indexării este mai rapidă decât sortarea.
3. Fişiere formular (eng. forms) - afișează interfețe mai prietenoase pentru introducerea datelor în tabele (cu indicaţii suplimentare), decât introducerea prin simpla deschidere a fișierului.
4. Fişiere raport (eng. report) - ajută la tipărirea datelor din tabele, sub formă de rapoarte complexe, cu cap de tabel, subtotaluri, semnături etc.
5. Fişiere interogări (eng. query) - permit selectarea după anumite criterii a datelor din unul sau mai multe tabele.
6. Fişiere cu programe de aplicaţii - conțin programe care prelucrează datele din BD. Programele conțin comenzile limbajului de programare al SGBD.
- utilizator (eng. user) : persoană care lucrează la calculator având anumite drepturi de acces.
- actualizare : modificarea unui fișier prin aducerea datelor la zi (datele devin actuale).
1. Partajarea datelor între utilizatori. Datele sunt stocate în fișiere (unice) pe server. Prin reţeaua de calculatoare aceste fișiere pot fi văzute și modificate de toți utilizatorii care au acest dreptul.
2. Reducerea volumului de date şi a redondanţei. Datele sunt riguros repartizate în funcție de semnificația lor în diferite fișiere și nu se repetă decât în cazuri speciale. Evitându-se repetarea datelor, se reduce mărimea și numărul fișierelor.
Exemplu : avem fișiere cu furnizori, clienți, facturi, încasări, personal, produse finite, materiale etc.
3. Integritatea şi corectitudinea sporită a datelor. Deoarece utilizatorii folosesc date stocate în fișiere unicat, se evită erorile de actualizare. Acestea apar când utilizatorii confundă copiile (versiunile) unor fișiere. În BD datele fiind în fișiere unicat, orice modificare devine imediat disponibilă pentru toți utilizatorii.
4. Control centralizat. Administratorul bazei de date asigură buna funcționare a BD prin operații specifice (salvări la final de zi, restaurarea sau repararea fișierelor defecte etc).
5. Securitate sporită. Utilizatorii au drepturi de acces și parole diferite și pot vedea doar o parte din BD, potrivit funcției și sarcinilor pe care le au în firmă, fapt esențial pentru păstrarea secretelor de serviciu. Administratorul BD poate vedea toate datele.
6. Independenţa datelor faţă de programele de aplicaţii. Constă în faptul că structura datelor nu se modifică cu programele de aplicații ci cu comenzi SGBD care nu se folosesc în programe.
- de obicei pentru prelucrare fiecare tabel trebuie deschis pe rând, deschiderea unuia închide automat pe cel deschis înainte.
- când dorim să vedem sau să prelucrăm într-o sesiune de lucru date din tabele diferite folosim tehnica legării tabelelor.
- tabelul părinte este tabelul de la care pornește legarea.
- tabelul copil este tabelul de care se leagă primului tabel.
- pentru legare se folosesc două coloane de legătură (chei), câte una în fiecare tabel :
legarea înseamnă conectarea rândurilor din tabelul părinte de rândurile din tabelul copil dacă valoarea cheii primare = valoarea cheii secundare.
- pot rămâne rânduri nelegate în ambele tabele dacă valorile cheilor nu se potrivesc.
- câmpurile alese pentru cheia primară și secundară nu este necesar să aibă același nume.
- Exemplul 1 - Legarea tabelului Furnizori de tabelul Produse :
Furnizori este tabelul părinte
Produse este tabelul copil
coloana FurnizoriID este cheia primară
coloana Furnizor este cheia secundară
La înregistrarea cu FurnizoriID = 1 se leagă mai multe înregistrări cu Furnizor = 1.
- Exemplul 2 - Model logic al unei BD în care vedem tabelele, câmpurile lor și două chei pentru legarea lor care au același nume :