Cunoaște Intuit, modelul de curs al bazei de date organizației
Rezumat: Cursul discută modelul de organizare a bazelor de date, caracteristica fiecărui model. Descrie avantajele și dezavantajele modelelor de baze de date existente. Dată fiind atribut definiție, înregistrarea și relații într-o varietate de modele de baze de date.
Scopul prelegerii: Să înțeleagă diferența dintre modelele de baza de date a organizației. Familiarizați cu punctele forte și punctele slabe ale acestora. Înțelege modul de organizare a comunicării în aceste modele, care se aplică într-o operație de schimbare anumit model.
Există trei modele de bază ale bazei de date - o ierarhică, de rețea și relațională. Modelele diferă în funcție de metoda de legare a datelor.
1. O abordare ierarhică a bazelor de date de organizare. Baza de date ierarhizată arborii sunt formate cu nodurile arce obligațiuni și elemente de date. Structura ierarhică presupune inegalitatea între datele - unul rigid subiect la altul. Astfel de structuri sunt, desigur, să îndeplinească în mod clar cerințele de multe, dar nu toate problemele reale.
2. Modelul de date de rețea. Baza de date de rețea, împreună cu conexiuni verticale și orizontale sunt puse în aplicare. Cu toate acestea, moștenit multe dintre deficiențele ierarhice și șef printre ele, necesitatea de a defini în mod clar datele de comunicare de nivel fizic și la fel de bine să urmeze această legături cu structura din toate interogările bazei de date.
3. Modelul relațional. Modelul relațional a fost determinată de dorința de a face baza de date cât mai flexibilă. Acest model a oferit un mecanism simplu și eficient pentru menținerea conexiunilor de date.
În primul rând. toate datele din model sunt prezentate în tabele și tabele numai. Modelul relational - singurul tuturor asigură coerența datelor. Și natura, și comunicarea acestor aceleași entități sunt prezentate în exact același model - tabele. Cu toate acestea, această abordare complică înțelegerea informațiilor stocate sens în baza de date, și, ca rezultat, manipularea informațiilor respective.
Pentru a evita dificultățile de manipulare a permite al doilea element al modelului - limbaj relațional-complet (rețineți că limba este o parte integrantă a oricărui model de date, fără un model nu există). Caracterul complet al limbii în anexa la modelul relațional este că acesta trebuie să efectueze orice operațiune de algebra relațională și calculul relațional (exhaustivitate ultima dovedit matematic EF Codd). Mai mult decât atât, limba trebuie să descrie orice solicitare sub formă de operațiuni cu tabele, nu la liniile lor. Un astfel de limbaj este SQL.
Al treilea element al modelului relațional, modelul relațional necesită menținerea unor constrângeri de integritate. O astfel de limitare susține că fiecare rând din tabel trebuie să aibă un identificator unic. numit cheia primară. A doua limitare este impusă integritatea referențială între tabele. Aceasta susține că atributele din tabel, se leagă la cheile primare ale altor tabele trebuie să aibă una dintre valorile cheilor primare.
Să ne gândim mai detaliat modelul de date suplimentare.
Modelul de bază de date ierarhică
bază de date Ierarhic - cea mai timpurie modelul de reprezentare a structurilor de date complexe. Informațiile din structura ierarhică se bazează pe baza unei structuri copac, sub formă de relații „predok- descendent“. Fiecare intrare poate avea cel mult o înregistrare părinte și mai mulți subordonați. înregistrările de comunicare sunt puse în aplicare ca indicii fizice de la o înregistrare la alta. Dezavantajul principal al structurii ierarhice a bazei de date - incapacitatea de a realiza relația „multi-la-mai multe“, precum și o situație în care o înregistrare are multiple strămoși.
Baze de date ierarhizate. baze de date ierarhizate pot fi reprezentate grafic ca un arbore inversat. Se compune din obiecte de diferite niveluri. Nivelul superior (rădăcina arborelui) are un singur obiect. al doilea - obiecte de nivelul al doilea și așa mai departe.
Conexiunea există între obiecte, fiecare obiect poate include mai multe obiecte de nivel inferior. Astfel de obiecte sunt în relație strămoșul (obiecta mai aproape de rădăcină.) Pentru copil (obiect de nivel inferior), obiectul -predok nu poate avea copii, sau au mai multe, în timp ce obiectul - descendentul are în mod necesar un singur părinte. Obiectele care au un strămoș comun, numit gemeni.
bază de date este un dosar Ierarhic director Windows. cu care se poate lucra, porniți Windows Explorer. Nivelul superior are dosar Desk. La al doilea nivel sunt folderul My Computer. Documentele mele, My Network Places și cumpărături. care sunt descendenți ai folderul Desk. și un geamăn interconectate. La rândul său. My Computer dosarul este strămoș în raport cu al treilea nivel de foldere -papkam disc (3.5 (A :), (C :), (D :), (E :), (F :)) și dosarele de sistem (scanner. bluetooth, etc) - Fig. 4.1.
Fig. 4.1. directorul bazei de date Ierarhic Windows dosar
Organizarea datelor într-o bază de date ierarhică este definită în termeni de tipul: un element de asamblare, o înregistrare (un grup), o relație de grup. bază de date.
Atribut (element de date)
- cea mai mică unitate de structură de date. De obicei, fiecare element în descrierea bazei de date este atribuit un nume unic. Sub acest nume se adresează în timpul prelucrării. element de date este, de asemenea, adesea menționată ca un câmp.
- un set denumit de atribute. Utilizarea înregistrărilor permite unui singur apel la baza de date pentru a obține un anumit set logic legate de date. Această înregistrare sa schimbat, a adăugat și șterse. tipul de înregistrare determinată de compoziția atributelor sale. Înregistrarea copie - intrare specifică cu o anumită valoare componente.
- relație ierarhică între cele două tipuri de intrări. intrare părinte (proprietarul relațiilor de grup) numită înregistrarea originală, și înregistrările copilului (relația dintre membrii grupului) - subordonați. Bază de date Ierarhic poate stoca numai astfel de structuri de arbori.
Rădăcina fiecărui arbore de intrare ar trebui să conțină o cheie cu o valoare unică. Keys înregistrările foliare trebuie să fie unic numai în cadrul relației de grup. Fiecare intrare este identificată prin cheia pe deplin angajată, care este definit ca mulțimea tuturor înregistrărilor din cheile de bază, într-un mod ierarhic.
În imaginea grafică relațiile de grup reprezintă arce ale unui grafic direcționat și tipuri de înregistrări - top (diagrama Bachman).
Pentru relațiile de grup într-un model ierarhic oferă comutare automată și un membru fix. Aceasta înseamnă că pentru stocarea orice intrare non-root trebuie să existe înregistrări părinte în baza de date.
Luați în considerare următorul model de întreprindere de date (a se vedea figura 4.2 ..): Compania este alcătuită din departamentele în care lucrează angajații. Fiecare departament poate avea mulți angajați, dar angajatul nu poate lucra mai mult de un departament.
Prin urmare, sistemul de management al personalului, trebuie să creați o relație de grup constând dintr-un departament de înregistrare părinte (NAIMENOVANIE_OTDELA, CHISLO_RABOTNIKOV) și o filială a înregistrărilor angajaților (nume, poziție, salariu). Acest raport este prezentat în Fig. 4.2 (a) (Pentru simplificare, se presupune că există doar două intrări pentru copii).
Fig. 4.2. Un exemplu al unei baze de date ierarhice
Din acest exemplu, deficiențe văzut baze de date ierarhice:
Parțial informații între înregistrări ale angajaților și artiști duplicat (aceste înregistrări sunt numite pereche), și nu acceptă corespondența dintre înregistrările asociate în modelul de date ierarhic.
Modelul Ierarhica realizează relația dintre original și înregistrarea copilului cu 1: N, adică o singură înregistrare părinte poate corespunde oricărui număr de filiale.
Să presupunem acum că interpretul poate lua parte la mai mult de un contract de (adică o conexiune apare tip M: N). În acest caz, trebuie să introduceți un alt grup de relații în baza de date. in care cantaretul va fi înregistrarea originală, iar contractul - o filială (a se vedea figura 4.2 c.). Astfel, din nou, trebuie să duplicat informații.
Operațiunile privind datele definite în modelul ierarhic:
Operația REMOVE este permisă condițiile de prelevare a probelor de atribuire (de exemplu, pentru a elimina angajații cu un salariu de mai mult de 10 mii de ruble).
După cum puteți vedea, toate operațiunile modificările se aplică numai o singură înregistrare „curent“ (care a preluat anterior din baza de date). Această abordare a manipularea datelor numit „navigație“.
constrângeri
sprijinite numai integritatea relației dintre proprietarii și membrii ai relației de grup (nici un copil nu poate exista fără un părinte). După cum sa menționat deja, aceasta nu asigură controlul automat al înregistrărilor de potrivire aparținând diferitelor ierarhii.