logo

Model relațional în SGBD

E.F.Codd a propus Modelul relațional pentru a modela datele sub formă de relații sau tabele. După proiectarea modelului conceptual al bazei de date folosind Diagrama ER , trebuie să convertim modelul conceptual într-un model relațional care poate fi implementat folosind oricare RDBMS limbaj precum Oracle SQL, MySQL, etc. Deci vom vedea care este Modelul Relațional.

Modelul relațional folosește o colecție de tabele pentru a reprezenta atât datele, cât și relațiile dintre aceste date. Fiecare tabel are mai multe coloane și fiecare coloană are un nume unic. Tabelele sunt cunoscute și ca relații. Modelul relațional este un exemplu de model bazat pe înregistrări. Modelele bazate pe înregistrări sunt denumite astfel deoarece baza de date este structurată în înregistrări în format fix de mai multe tipuri. Fiecare tabel conține înregistrări de un anumit tip. Fiecare tip de înregistrare definește un număr fix de câmpuri sau atribute. Coloanele tabelului corespund atributelor tipului de înregistrare. Modelul de date relaționale este cel mai utilizat model de date, iar marea majoritate a sistemelor de baze de date actuale se bazează pe modelul relațional.



Ce este Modelul Relațional?

Modelul relațional reprezintă modul în care datele sunt stocate în bazele de date relaționale. O bază de date relațională constă dintr-o colecție de tabele, fiecăruia fiind atribuit un nume unic. Luați în considerare o relație STUDENT cu atributele ROLL_NO, NUME, ADRESĂ, TELEFON și VÂRĂ afișate în tabel.

Elevi de masă

ROLA NUMĂRUL NUME ABORDARE TELEFON VÂRSTĂ
1 RAM DELHI 9455123451 18
2 RAMESH GURGAON 9652431543 18
3 SUJIT ROHTAK 9156253131 douăzeci
4 SURESH DELHI 18



arbore binar java

Terminologii importante

  • Atribut: Atributele sunt proprietățile care definesc o entitate. de exemplu.; ROLA NUMĂRUL , NUME, ADRESĂ
  • Schema de relații: O schemă de relație definește structura relației și reprezintă numele relației cu atributele acesteia. de exemplu.; STUDENT (ROLL_NO, NAME, ADDRESS, PHONE și AGE) este schema de relație pentru STUDENT. Dacă o schemă are mai mult de o relație, se numește Schemă relațională.
  • tuplu: Fiecare rând din relație este cunoscut ca tuplu. Relația de mai sus conține 4 tupluri, dintre care unul este prezentat ca:
1 RAM DELHI 9455123451 18
  • Instanță de relație: Setul de tupluri ale unei relații la o anumită instanță de timp se numește instanță de relație. Tabelul 1 arată instanța relației STUDENT la un anumit moment. Se poate schimba ori de câte ori există o inserare, ștergere sau actualizare în baza de date.
  • grad: Numărul de atribute din relație este cunoscut sub numele de gradul relației. The STUDENT relația definită mai sus are gradul 5.
  • Cardinalitate: Numărul de tupluri dintr-o relație este cunoscut ca cardinalitatea . The STUDENT relația definită mai sus are cardinalitatea 4.
  • Coloană: Coloana reprezintă setul de valori pentru un anumit atribut. Coloana ROLA NUMĂRUL se extrage din relatia STUDENT.
ROLA NUMĂRUL

1

2

3



4

  • Valori NULL: Valoarea care nu este cunoscută sau indisponibilă se numește valoare NULL. Este reprezentat de un spațiu liber. de exemplu.; PHONE de STUDENT care are ROLL_NO 4 este NULL.
  • Cheie de relație: Acestea sunt practic cheile care sunt folosite pentru a identifica rândurile în mod unic sau, de asemenea, ajută la identificarea tabelelor. Acestea sunt de următoarele tipuri.
    • Cheia principala
    • Cheia candidatului
    • Super Cheie
    • Cheie externă
    • Cheie alternativă
    • Cheie compusă

Constrângeri în modelul relațional

În timpul proiectării Modelului Relațional, definim unele condiții care trebuie să fie valabile pentru datele prezente în baza de date sunt numite Constrângeri. Aceste constrângeri sunt verificate înainte de a efectua orice operațiune (inserare, ștergere și actualizare) în baza de date. Dacă există o încălcare a oricăreia dintre constrângeri, operația va eșua.

dactilografiat fiecare

Constrângeri de domeniu

Acestea sunt constrângeri la nivel de atribut. Un atribut poate lua numai valori care se află în interiorul domeniului. de exemplu.; Dacă se aplică o constrângere AGE>0 relației STUDENT, inserarea unei valori negative a AGE va duce la eșec.

Integritatea cheie

Fiecare relație din baza de date ar trebui să aibă cel puțin un set de atribute care definește un tuplu în mod unic. Acest set de atribute se numește chei. de exemplu.; ROLL_NO în STUDENT este cheia. Nu există doi elevi care să aibă același număr de rolă. Deci o cheie are două proprietăți:

  • Ar trebui să fie unic pentru toate tuplurile.
  • Nu poate avea valori NULL.

Integritate referenţială

Când un atribut al unei relații poate lua valori numai de la un alt atribut al aceleiași relații sau din orice altă relație, se numește integritate referenţială . Să presupunem că avem 2 relații

Elevi de masă

ROLA NUMĂRUL NUME ABORDARE TELEFON VÂRSTĂ CODUL FILIALEI
1 RAM DELHI 9455123451 18 CS
2 RAMESH GURGAON 9652431543 18 CS
3 SUJIT ROHTAK 9156253131 douăzeci ECE
4 SURESH DELHI 18 ACEASTA

Ramura de masă

CODUL FILIALEI BRANCH_NAME
CS INFORMATICĂ
ACEASTA TEHNOLOGIA DE INFORMAȚIE
ECE ELECTRONICĂ ȘI INGINERIA COMUNICĂRII
CV INGINERIE CIVILĂ

BRANCH_CODE de STUDENT poate lua numai valorile care sunt prezente în BRANCH_CODE de BRANCH care se numește constrângere de integritate referențială. Relația care face referire la o altă relație se numește RELATIE DE REFERENȚARE (ELEVUL în acest caz) iar relația la care se referă alte relații se numește RELATIE REFERENȚATĂ (RAMURĂ în acest caz).

jocuri cu mesaje cu Android

Anomalii în modelul relațional

Un anomalie este o neregulă sau ceva care se abate de la starea așteptată sau normală. La proiectarea bazelor de date, identificăm trei tipuri de anomalii: Insert, Update și Delete.

Anomalii de inserare în relația de referință

Nu putem insera un rând în REFERENCING RELATION dacă valoarea atributului de referință nu este prezentă în valoarea atributului referit. de exemplu.; Inserarea unui student cu BRANCH_CODE „ME” în ​​relația STUDENT va duce la o eroare, deoarece „ME” nu este prezent în BRANCH_CODE din BRANCH.

Anomalie de ștergere/actualizare în relația de referință:

Nu putem șterge sau actualiza un rând din REFERENCED RELATION dacă valoarea REFERENCED ATTRIBUTE este folosită în valoarea REFERENCED ATTRIBUTE. de exemplu; dacă încercăm să ștergem un tuplu din BRANCH având BRANCH_CODE 'CS', va avea ca rezultat o eroare deoarece 'CS' este referit de BRANCH_CODE de STUDENT, dar dacă încercăm să ștergem rândul din BRANCH cu BRANCH_CODE CV, acesta va fi șters. deoarece valoarea nu a fost folosită prin relația de referință. Poate fi tratat prin următoarea metodă:

programare int c nesemnată

La Delete Cascade

Va șterge tuplurile din REFERENCING RELATION dacă valoarea folosită de REFERENCING ATRIBUTE este ștearsă din REFERENCED RELATION. de exemplu.; Căci, dacă ștergem un rând din BRANCH cu BRANCH_CODE ‘CS’, rândurile din relația STUDENT cu BRANCH_CODE CS (ROLL_NO 1 și 2 în acest caz) vor fi șterse.

Pe Update Cascade

Acesta va actualiza ATRIBUTUL DE REFERENȚARE în RELATIA DE REFERINȚARE dacă valoarea atributului folosită de ATRIBUT DE REFERINȚARE este actualizată în RELATIA DE REFERINȚĂ. de exemplu, dacă actualizăm un rând de la BRANCH cu BRANCH_CODE „CS” la „CSE”, rândurile din relația STUDENT cu BRANCH_CODE CS (ROLL_NO 1 și 2 în acest caz) vor fi actualizate cu BRANCH_CODE „CSE”.

Super Chei

Orice set de atribute care ne permite să identificăm rânduri unice (tupluri) într-o relație dată este cunoscut sub numele de super-chei. Dintre aceste super-chei, putem alege întotdeauna un subset adecvat dintre acestea, care poate fi folosit ca o cheie primară. Astfel de chei sunt cunoscute sub denumirea de chei Candidate. Dacă există o combinație de două sau mai multe atribute care sunt folosite ca cheie primară, atunci o numim cheie compusă.

Reguli Codd în modelul relațional

Edgar F Codd a propus modelul bazei de date relaționale în care a stabilit reguli. Acum acestea sunt cunoscute sub numele de Regulile lui Codd. Pentru ca orice bază de date să fie cea perfectă, trebuie să respecte regulile.

Pentru mai multe, consultați Reguli Codd în modelul relațional .

Avantajele modelului relațional

  • Model simplu: Modelul relațional este simplu și ușor de utilizat în comparație cu alte limbi.
  • Flexibil: Modelul relațional este mai flexibil decât orice alt model relațional prezent.
  • Sigur: Modelul relațional este mai sigur decât orice alt model relațional.
  • Precizia datelor: Datele sunt mai precise în modelul de date relaționale.
  • Integritatea datelor: Integritatea datelor este menținută în modelul relațional.
  • Operațiile pot fi aplicate cu ușurință: Este mai bine să efectuați operații în modelul relațional.

Dezavantajele modelului relațional

  • Modelul bazelor de date relaționale nu este foarte bun pentru bazele de date mari.
  • Uneori, devine dificil să găsești relația dintre tabele.
  • Din cauza structurii complexe, timpul de răspuns pentru interogări este mare.

Caracteristicile Modelului Relațional

  • Datele sunt reprezentate în rânduri și coloane numite relații.
  • Datele sunt stocate în tabele având relații între ele numite model relațional.
  • Modelul relațional acceptă operațiuni precum definirea datelor, manipularea datelor și gestionarea tranzacțiilor.
  • Fiecare coloană are un nume distinct și reprezintă atribute.
  • Fiecare rând reprezintă o singură entitate.