Pentru a implementa funcțiile de bază în IC, se folosesc diferite principii de descriere a datelor. Miezul oricărei baze de date este modelul de reprezentare a datelor, adică structura lor informațională. Un model de bază de date este un set de structuri de date și operații de manipulare cu aceste structuri. Dacă baza de date nu conține date externe, aceasta are în continuare informații. Această informație este structura bazei de date în sine. Structura definește metodele de introducere a datelor și stocarea acestora în baza de date.
• modele de date obiect;
• modele de date bazate pe înregistrări;
• modele de date fizice.
Cele mai utilizate pe scară largă sunt modelele de date bazate pe înregistrări. În ele, baza de date constă din mai multe înregistrări de format fix și diferite tipuri. Modelele de informații ale datelor bazate pe înregistrări sunt împărțite în:
1) Graficul teoretic (TG):
2) Set-teoretic (TM):
Modelele cu modele de simulare permit procesarea simultană a obiectelor de date singulare din baza de date. Accesul la baza de date este susținut de crearea unor aplicații adecvate cu interfața proprie. Mecanismele de accesare a datelor și de navigare a structurii datelor în astfel de modele sunt destul de complexe, în special în modelul de rețea.
Modelele set-teoretice utilizează aparatul matematic al algebricii relaționale (prelucrarea caracteristică a seturilor). Datele din astfel de baze de date sunt prezentate ca seturi de tabele, peste care se pot executa operații, formulate în termeni de algebră relațională.
În baza de date ierarhică există o ordonare a elementelor din înregistrare. Obiectele legate de relațiile ierarhice formează un arbore grafic orientat. Pentru această structură, este caracteristică subordonarea obiectelor de nivel inferior la obiecte de nivel superior (Figura 10.2). O bază de date ierarhică formează, de exemplu, directorul fișierelor stocate pe disc, iar arborele de directoare este o demonstrație vizuală a structurii sale.
Primele sisteme de gestionare a bazelor de date au utilizat un model de date ierarhic. Cel mai bine cunoscut DBMS, folosind un model de date de acest tip, este IBM's Information Management System (IMS), prima versiune a cărei versiune apare în 1968.
Principalele unități de informații din sistemul de date ierarhic sunt segmentul și câmpul. Câmpul de date este definit ca cea mai mică unitate indivizibilă de date aflate la dispoziția utilizatorului. Segmentul se formează din valorile câmpurilor de date. În modelul ierarhic, vârful copacului corespunde segmentului, iar la arce - tipurile de relație "descendent-descendent". Fiecare segment de copil trebuie să aibă exact un strămoș.
Fig. 10.2. Baza de date ierarhică
În general, o bază de date ierarhică constă într-un set ordonat de mai multe exemple de același tip de copac. În acest caz, arborele graf are următoarele proprietăți:
a) există un singur punct al grafului - o rădăcină în care nu intră nicio margine;
b) un nivel superior n poziționează o nervură (n - 1) nivelul -lea, aceste vârfuri provin de la zero, una sau mai multe vârfuri generate numite descendenți;
c) singura cale către vârful generat se află prin vârful său inițial;
d) fiecare descendent are doar un singur strămoș;
e) nu există bucle și cicluri închise;
e) un segment care nu are descendenți se numește un segment de frunze.
În timpul funcționării, structura arborescentă utilizând două metode de acces la toate nodurile din arborele: traversal ordine directă (de la rădăcină cu o parcurgeri descendentă a subramificații la nivelul dorit) și o procedură traversal inversă (de la nivelul n-lea cu parcurgeri în sus de subramificații la rădăcină).
Rețeaua DB este mai flexibilă, deoarece este posibil să adăugăm legături orizontale în plus față de relațiile ierarhice verticale. O structură de rețea este un grafic arbitrar, în care fiecare element poate fi asociat cu orice alt element (Figura 10.3).
Fig. 10.3. Baza de date a rețelei
Un grafic arbitrar constă din noduri (noduri) legate de margini. Într-un model de rețea, nodurile sunt obiecte sub formă de tipuri de înregistrări de date, iar marginile sunt legături între obiecte. Principala diferență dintre formele grafice de reprezentare a datelor în structura rețelei din datele din structura ierarhică este că descendentul din grafic poate avea orice număr de strămoși.
Un reprezentant DBMS tipic care utilizează modelul de date de rețea este Sistemul integrat de gestionare a bazelor de date (IDMS) al companiei Cullinet Software, Inc. concepute pentru a fi utilizate pe mașinile IBM.
Principalele tipuri de structuri de date în modelele de rețea sunt elemente de date, agregate de date, înregistrări și seturi (Figura 10.4).
Fig. 10.4. Structuri de bază ale modelului de date de rețea
Un element de date este cea mai mică unitate de date cu nume de date disponibilă pentru utilizator.
Agregarea datelor este un set numit de elemente de date dintr-un înregistrare sau alt agregat.
Înregistrarea este nivelul final al compoziției elementelor de date. Fiecare înregistrare este o structură denumită care conține unul sau mai multe elemente de date.
Un tip de înregistrare este o colecție de instanțe înregistrate logic. Tipul de înregistrare modelează o clasă de obiecte din lumea reală.
Un set este o structură ierarhică pe două nivele, care conține o înregistrare a proprietarului și a înregistrărilor membrilor. Seturile exprimă relația dintre tipurile de înregistrări.
Graficul grafic al bazei de date este mult mai complicat decât ierarhia ierarhică și are următoarele proprietăți:
• baza de date poate conține orice număr de seturi și înregistrări;
• poate exista un număr de seturi între două tipuri de înregistrări;
• Tipul înregistrării poate fi proprietarul în anumite tipuri de seturi și un membru în alte tipuri de seturi sau poate să nu fie membru al unui anumit set de seturi;
• un singur tip de înregistrare poate fi proprietarul fiecărui set;
• tipurile de seturi pot forma o structură ciclică;
• același tip de înregistrare poate fi proprietarul mai multor tipuri de seturi și simultan poate fi membru al mai multor tipuri de seturi.
Dezavantajul modelului de rețea este complexitatea implementării acestuia.
Relația (din relația engleză - relație) este o bază de date care conține informații organizate sub formă de tabele dreptunghiulare. Bazele de date relaționale se caracterizează prin simplitatea structurii datelor, o reprezentare tabulară convenabilă pentru utilizator și posibilitatea utilizării aparatului formal al algebricii relațiilor.
Un concept important al modelelor de date relaționale este esența. O entitate este un obiect de orice natură, date despre care sunt stocate în baza de date.
În prezent, abordarea relațională a bazelor de date este cea mai comună. Această abordare are următoarele avantaje:
• utilizarea unui set relativ mic de abstracții care permit modelarea majorității zonelor tematice;
• existența unui aparat matematic simplu bazat pe teoria seturilor și logica matematică și oferind o bază teoretică pentru abordarea relațională;
• Abilitatea de a naviga în baza de date fără a cunoaște o anumită organizare fizică a datelor pe suporturi externe.
Sistemele relaționale nu sunt imediat răspândite. Chiar și acum nu există o astfel de DB relațională, în care toate caracteristicile tehnologiei relaționale ar fi susținute. Până în prezent, principalele deficiențe ale tehnologiei relaționale sunt:
• baze de date relaționale limitate atunci când sunt utilizate, de exemplu, în sisteme de proiectare automată (CAD), care utilizează structuri foarte complexe;
• posibilități limitate de reflectare adecvată a semanticii domeniului.
Deci, o bază de date relațională este un set finit de relații. Relațiile sunt folosite pentru a reprezenta obiecte și pentru a reprezenta relațiile dintre obiecte. Fiecare relație este un tabel bidimensional format din rânduri și coloane, cu rânduri corespunzătoare înregistrărilor și coloane cu atribute.
Un atribut este o coloană de relație numită. Proprietățile obiectului, caracteristicile acestuia sunt determinate de valorile atributelor.
Deși conceptul de „atitudine“ și „de masă“ sunt văzute uneori ca sinonime, acestea ar trebui să fie distinse: raportul nu este nici o masă, ci doar o masă, care are anumite proprietăți. Vom folosi termenul "tabel" în următoarea afirmație, luând în considerare această remarcă.
Fiecare masă relațională, reprezentând o matrice bidimensională (vezi Figura 10.1), are următoarele proprietăți:
• fiecare element al tabelului - un element de date;
• Toate coloanele sunt omogene, adică toate elementele din coloană au același tip și lungime;
• fiecare coloană are un nume unic;
• aceleași rânduri lipsesc în tabel;
• ordinea rândurilor și a coloanelor este arbitrară.
Luați în considerare proprietățile de bază ale câmpurilor bazei de date și tipurile de date utilizate de exemplul DBMS relațional Microsoft Access. În acesta, toate câmpurile au următoarele proprietăți de bază:
• nume de câmp - definește accesul la datele din acest câmp, este utilizat ca titluri de coloane ale tabelelor;
• tipul câmpului - determină tipul de date conținute în acest câmp;
• dimensiunea câmpului - specifică lungimea maximă a câmpului (în caractere);
• condiție pentru valoare - restricția utilizată pentru a verifica corectitudinea intrării datelor;
• mesaj de eroare - un mesaj text care este afișat când încercați să introduceți date eronate în câmp;
• câmp obligatoriu - o proprietate care specifică umplerea obligatorie a datelor în acest câmp;
• Câmp indexat - o proprietate care accelerează operațiile de căutare și sortare a înregistrărilor și verificarea înregistrărilor pentru prezența datelor duplicate.
Deoarece datele de diferite tipuri pot fi stocate în câmpuri diferite, proprietățile câmpurilor depind de tipul de date stocate. Tabelele de baze de date vă permit să lucrați cu un număr mare de tipuri diferite de date în comparație cu alte programe de aplicații standard Windows.
Toate bazele de date au o modalitate specială de salvare a datelor, diferite de modul în care datele sunt stocate în sistemele de fișiere. În partea de operațiuni, ca de obicei, este implicat sistemul de operare al calculatorului, însă unele operații de salvare apar în jurul sistemului de operare.
Operațiile de modificare a structurii bazei de date, crearea de tabele noi sau alte obiecte apar atunci când fișierul bazei de date este salvat, adică despre aceste operațiuni, DBMS avertizează utilizatorul. Pe de altă parte, operațiile de modificare a conținutului datelor, care nu afectează structura bazei de date, sunt efectuate automat și fără avertizare. Toate modificările făcute în tabelele bazei de date sunt salvate pe disc fără știrea noastră, adică hard disk-ul funcționează direct, în afara sistemului de operare.