Testeaza-ti cunostintele la SGBD (baze de date avansate)


  1. Să se întocmească o paralelă sintetizată, după noţiunile: frază SQL, vedere, procedură stocată, funcţie definită de utilizator, declanşator. Se vor lua în seamă următoarele: definire, aplicabilitate, caracterististici, avantaje în utilizare.
  2. Se consideră următoarea structură de bază de date, prezentată sub formă conceptuală:

    Clase (clasa (9A, 9B, …), specializare, diriginte)
    Elevi (clasa, matricol, nume, prenume, data nast, observatii)
    Discipline (cod mat, denumire, an studiu, nume prof)
    Catalog (clasa, matricol, cod mat, id operatie, nota, semestru, data)

    formula
    1. Construcţia bazei de date
      1. Folosind limbajul Transact-SQL din SQL Server să se construiască o bază de date cu numele “Liceu”, pentru care fişierul principal va avea numele “liceu_1”, cel secundar “liceu_2”, iar cel de logare “liceu_3”, folosind extensiile respective.
      2. Să se construiască tabelele afiliate bazei de date, folosind cosntrângerile corespunzătoare, scriind inclusiv o zonă de testare a existenţei tabelului propus spre adăugare în baza de date. În tabela “Elevi” se va construi un index non-clustered după numele şi prenumele elevului.
    2. Limbajul de interogare SQL
      1. Aplicând predicatul de joncţiune se cere obţinerea unei liste cu catalogul elevilor din baza de date „Liceu”. Lista va conţine: codul matricol al elevului (reuniune între clasa şi codul identificator), specializarea, numele şi prenumele, şi notele aferente.
      2. Să se construiască o interogare de reuniune astfel:
        • prima linie: marca elevului, numele şi prenumele, ‘nota’, nota
        • a doua linie: marca elevului, numele şi prenumele, ‘media’, media aferentă
        Se vor lua în calcul doar numele pentru semestrul I al anului 2012-2013. Lista va fi aranjată după fiecare elev, iar notele în ordine descrescătoare.
      3. O listă cu acei elevi a căror medie este peste media generală medie a elevilor de clasa a 9-a. Pentru simplificare, considerăm ca fiind 3 clase de a 9-a (9A, 9B şi 9C).
    3. Vederi
      • Construcţia unei vederi ce va conţine, ca şi tabel virtual, codurile matricole ale elevilor, numele si prenumele acestora, precum şi media generală a notelor obţinute.
    4. Proceduri stocate
      1. Să se construiască o procedură stocată prin care se va afla numărul de elevi şi media generală a notelor obţinute, pentru o anumită clasă dată ca parametru. Secvenţă de program pentru utilizare.
      2. Se cere construcţia unei proceduri stocate, pentru reţinerea de informaţii despre clasele existe în liceu. Secvenţă de program pentru utilizare.
    5. Funcţii definite de utilizator
      • Să se scrie o UDF cu rezultat transmis sub formă tabelară, pentru calcularea mediilor elevilor unei anumite clase, clasă dată prin numele său (9A, 9B, ...) ca şi parametru. Lista va conţine codurile matricole, numele şi prenumele, clasa şi media. Se va construi inclusiv o secvenţă program apelatoare.
    6. Declanşatoare
      1. Se va scrie un declanşator pentru imposibilitatea utilizatorului bazei de date “Liceu” de a introduce sau modifica note, ce se adeveresc ca fiind invalide. Se va scrie şi o secvenţă de program apelatoare.
      2. Se va construi un declanşator pentru evenimentul de ştergere ataşat posibilităţii de eliminare a unei anumite note, a unui anumit elev, din baza de date. Se va scrie şi o secvenţă apelatoare.
Puteti lasa si voi variantele voastre la aceasta materie, in comentariile acestei pagini.
Acest site utilizeaza cookie-uri. Navigand in continuare va exprimati acordul asupra folosirii cookie-urilor.