Sari la conținut
EduCamp
Definitivat2020Teorie15 puncte

Subiectul I, cerința 4

Proiectarea unei baze de date

Modelul conceptual cu patru entități, formele normale, modelul fizic și comanda de adăugare a unui nou stil de dans, pentru o școală care organizează cursuri.

Modelul conceptual

Entitățile

CATEGORIE — categoria în care se încadrează un stil de dans. Atribute: id_categorie, denumire. Identificator unic: id_categorie.

STIL — un stil de dans pentru care școala asigură cursuri. Atribute: id_stil, nume, id_categorie, descriere. Identificator unic: id_stil.

CURSANT — o persoană înscrisă la cursuri. Atribute: id_cursant, prenume, nume, data_nasterii. Identificator unic: id_cursant.

INSCRIERE — înscrierea unui cursant la un stil de dans, la o anumită dată. Atribute: id_inscriere, id_cursant, id_stil, data_inscrierii. Identificator unic: id_inscriere.

Relațiile dintre entități și cardinalitatea lor

  • CATEGORIE — STIL, de tip unu la mai mulți (1:n): o categorie cuprinde mai multe stiluri de dans, iar un stil aparține unei singure categorii.
  • CURSANT — INSCRIERE, de tip unu la mai mulți (1:n): un cursant poate avea mai multe înscrieri, iar o înscriere aparține unui singur cursant.
  • STIL — INSCRIERE, de tip unu la mai mulți (1:n): la un stil de dans se pot înscrie mai mulți cursanți, iar o înscriere se referă la un singur stil.

Entitatea INSCRIERE este entitatea asociativă care descompune relația mai mulți la mai mulți dintre CURSANT și STIL. Ea este necesară și pentru că data înscrierii este un atribut al legăturii dintre cursant și stil, nu al vreuneia dintre cele două entități: același cursant se poate înscrie la același stil în ani diferiți, iar enunțul cere să se poată distinge înscrierile din anul curent de cele mai vechi.

Respectarea primelor trei forme normale

  • FN1 — fiecare atribut memorează o singură valoare atomică, iar fiecare înregistrare este identificată în mod unic. De aceea stilurile pe care le-a urmat un cursant nu se memorează într-un câmp al entității CURSANT, sub forma unei liste, ci prin câte o înregistrare în INSCRIERE. Tot din acest motiv numele și prenumele se memorează în atribute separate.
  • FN2 — fiecare atribut care nu face parte din cheie depinde de întreaga cheie primară. Toate cheile primare sunt formate dintr-un singur atribut, deci niciun atribut nu poate depinde de o parte a cheii.
  • FN3 — niciun atribut care nu face parte din cheie nu depinde de un alt atribut necheie. De aceea denumirea categoriei nu se memorează în STIL, ci în CATEGORIE: altfel denumire ar depinde de id_categorie, care nu este cheie în STIL, iar aceeași categorie ar fi scrisă din nou pentru fiecare stil.

Restricții care trebuie impuse

  • nume este unic în STIL, iar denumire este unică în CATEGORIE: două stiluri cu același nume ar face imposibilă identificarea celui căutat.
  • Combinația de valori id_cursant, id_stil, data_inscrierii este unică în INSCRIERE: un cursant nu se poate înscrie de două ori la același stil în aceeași zi.
  • data_nasterii nu poate fi ulterioară datei curente, iar data_inscrierii nu poate fi anterioară datei nașterii cursantului.
  • id_cursant și id_stil din INSCRIERE trebuie să corespundă unor înregistrări existente în CURSANT, respectiv în STIL.

Modelul fizic

Diagrama celor patru tabele ale bazei de date și a relațiilor dintre ele 1∞ 1∞ 1∞ categorii id_categoriePK denumire stiluri id_stilPK nume id_categorieFK descriere cursanti id_cursantPK prenume nume data_nasterii inscrieri id_inscrierePK id_cursantFK id_stilFK data_inscrierii
Cele patru tabele și relațiile dintre ele. PK — cheie primară, FK — cheie externă. Fiecare legătură este de tip unu la mai mulți, dinspre 1 spre ∞.
TabelaCâmpuriCheie primarăChei externe
categoriiid_categorie, denumireid_categorie—
stiluriid_stil, nume, id_categorie, descriereid_stilid_categorie → categorii
cursantiid_cursant, prenume, nume, data_nasteriiid_cursant—
inscrieriid_inscriere, id_cursant, id_stil, data_inscrieriiid_inscriereid_cursant → cursanti, id_stil → stiluri

Rezolvarea se poate citi pe educamp.ro, la adresa de mai sus.

Ce cuprinde rezolvarea

  1. Modelul conceptual
  2. Modelul fizic
  3. Adăugarea unui nou stil de dans
  4. Cum se obțin cele trei informații calculate

Vezi rezolvarea ca și cursant

Cel puțin o cerință din fiecare an este disponibilă gratuit și integral. Pentru a citi toate celelalte rezolvări ale disciplinei, te înscrii la cursul de pregătire.

Te înscrii, alegi în cont când începe cursul și plătești prima lună prin transfer bancar. Pentru a vedea mai întâi cum este scrisă o rezolvare, poți reveni la prima cerință a anului.

Acces la suportul de curs

25 RON / lună, fără ședințe

Ce cuprinde:

  • Acces la toate lecțiile disponibile
  • Suport de curs pentru tematica științifică și metodică
  • Exemple, explicații și exerciții
  • Acces la materialele noi adăugate pe platformă
  • Posibilitatea de a adresa întrebări

Poți alege și variante cu ședințe online, în grup sau individuale. Le vezi pe pagina cursului.

Ai întrebări sau o problemă? Scrie-mi pe WhatsApp, la 0745 874 576.

Înscrie-te Alte varianteCum plătești Login

Actualizat: 28 august 2026