Documente Academic
Documente Profesional
Documente Cultură
b. 1+4
c. 1+2
d. 2+3+5
9.Care dintre urmatoarele desemneaza clause care pot aparea in interogari SQL:
Alegeti una sau mai multe optiuni:
HAVING
MODIFY
GROUP BY
ORDER BY
SET
10.Care dintre urmatoarele variante privind scopul normalizarii relatiilor din cadrul bazelor
de date relationale este corecta:
Alegeti una sau mai multe optiuni:
*Reducerea complexitatii sistemului informatic
*Sporirea calitatii datelor de intrare
*Stergerea de indecsi
*Adaugarea de linii intr-o tabela
*Crearea de tabele virtuale
19.Trebuie să modificaţi coloana Valoare din tabela Comenzi. Coloana trebuie configurată
astfel încât să accepte o valoare implicită de 250. Tabelul conţine date pe care trebuie să le
păstraţi. Ce comanda veţi folosi?
Alegeți o opțiune:
a. DROP TABLE Comenzi;
CREATE TABLE Comenzi
(nrcomanda varchar2(5) CONSTRAINT pk_orders_01 PRIMARY KEY,
idclient varchar2(5) REFERENCES clienti (clientid),
data_comanda date,
valoare DEFAULT 250);
b. ALTER TABLE Comenzi
CHANGE DATATYPE valoare TO DEFAULT 250;
c. DELETE TABLE Comenzi;
CREATE TABLE Comenzi
(nrcomanda varchar2(5) CONSTRAINT pk_orders_01 PRIMARY KEY,
idclient varchar2(5) REFERENCES clienti (clientid),
data_comanda date,
21.Care dintre următoarele comenzi va șterge cu succes tabela LOCAȚII din baza de date?
Alegeți o opțiune:
a. DELETE TABLE locatii;
b. TRUNCATE TABLE locatii;
c. DROP TABLE locatii;
d. ALTER TABLE locatii REMOVE;
1.Fie două entităţi COMENZI şi FIRME. Care dintre următoarele afirmaţii sunt corecte:
Alegeți o opțiune:
a. se recomandă stabilirea unei asocieri de tip m-n între cele două entități
b. se recomandă stabilirea unei asocieri de tip 1-n între cele două entităţi
c. asocierea poate fi recursivă
d. se recomandă stabilirea unei asocieri de tip 1-1 între cele două entități
3. Care dintre urmatoarele comenzi va sterge cu success tabela LOCATII din baza de date?
*DROP TABLE locatii
4.Ce variante de raspuns contin correct restrictiile de integritate ale modelului relational:
1.referinta, entitati comprotamentale
2. cheie unica semantica de aplicatie
3.temporare, de domeniu, de actualizare
4.cheie unica, referinta ,entitati
5.de domeniu, referinta, de actualizare
*1+4
2.SUM 5.SUBSTR
3.MIN 6.MAX
*1+3+6
12.Care dintre urmatorii operatori returneaza toate inregistrarile din ambele tabele dupa
elementarea duplicatelor:
*UNION
14. Fie tabela COMENZI (nr_com NUMBER(5) PRIMARY KEY, data_c DATE, cod_f number(5))
si urmatoarele instructiuni:
A. SELECT count(nr_com) FROM comenzi WHERE extract (year from data_c)=2000;
B. SELECT count(nr_com) FROM comenzi WHERE to_char (data_c, ‘YYYY’)=’2000’;
B. SELECT count(nr_com) FROM comenzi WHERE to_data (data_c, ‘yyyy’)=’%2000’;
*instructiunile A si B returneaza acelasi rezultat;
15.Care dintre urmatoarele optiuni nu este adevarata despre sinonimele bazei de date:
*sinonimele publice exista doar la nivelul utilizatorului care le a create.
3.Fie tabela COMENZI (nr_com NUMBER(5) PRIMARY KEY, data DATE) si urmatoarele
instructiuni:
L1 SELECT count(nr_com) from COMENZI where extract (year from data)=2018;
l2 SELECT count(nr_com) from COMENZI where to_char(data, ‘yyyy’)=’2018’;
l3 SELECT count(nr_com) from COMENZI where to_date(data, ‘yyyy’)=’%2018’;
Alegeti una sau mai multe optiuni:
*instructiunile l1 si l2 returneaza acelasi rezultat;
*instructiunea l3 este eronata;
6.Pentru a adauga o coloana discount in tabela client, care sa aiba urmatoarele valori
-daca limita_credit < 1000, discount 10%
-daca limita_credit intre 1000 and 3000, discount 15%
-daca limita_credit peste 3000, discount 20%
Ce comenzi vor fi utilizate?
Alegeti una sau mai multe optiuni:
*ALTER, UPDATE
12.VIEW-urile :
*Permit stocarea interogatorilor si utilizarea ulterioara a acestora;
*pot avea clauza WITH CHECK OPTION pentru a proteja datele;
14. Care din urmatoarele clauze/optiuni sunt specifice atat secventelor cat si cererilor
ierarhice:
17.Comanda ALTER:
*Modifica coloanele din tabela
*Actualizeaza structura tabelei;
22.Care dintre urmatoarele clauze este obligatorie pentru parcurgerea unei structuri
ierarhice?
*GROUP BY
*ORDER BY
*CONNECT BY
*CONNECT_BY_ISLEAF
26.Secventele:
*genereaza valori pentru atributele care au restrictive PRIMARY KEY dintr- o tabela
29.Care din urmatoarele desemneaza clauze care pot aparea in interogari SQL:
GROUP BY
HAVING
MODIFY
ORDER BY
SET
35. • Într-o bază de date relaţională, fie relația R1. In urma aplicării unei operații pe relația
R1
se obține o nouă relație R2, care conține doar o parte dintre atributele relației R1 şi tupluri
distincte. Precizați ce operator al algebrei relaționale realizează această operație:
*e)proiecţia
43.Specificaţi care dintre următorii operatori nu face parte din grupa operatorilor din
algebra relaţională:
• selecția
• proiecția
• joncțiunea
• produsul cartezian
• cuantificatorul existential
43.Fie interogarea:
SELECT CASE NULL WHEN NULL THEN ‘1’ ELSE ‘2’ END FROM DUAL;Ce afiseaza aceasta?
*2
44.Sa se precizeze care dintre cererile SQL-Oracle de mai jos afiseaza ultima zi din luna
curenta?
*SELECT last_days(sysdate) from dual;
48.Clauza HAVING:
*Permite stabilirea conditiilor pe functii de grup;
*Nu este o clauza obigatorie
53.Care dintre urmatoarele clauze sunt adecvate secventelor sau cererilor ierarhice:
*PRIOR
*START WITH
*NOCYCLE
54.Fie interogarea:
Select denumire_produs, descriere from produse where categorie in(select categorie from
produse where lower (denumire_produs) like ‘%laptop%’);
*Este o interogare cu o subcerere
*Afiseaza produsele care se afla in aceleasi categorii cu produsele care contin in denumire
cuvantul “laptop”
2. Fie două entități COMENZI şi FIRME. Care dintre următoarele afirmații sunt corecte:
se recomandă stabilirea unei asocieri de tip 1-n între cele două entităţi
asocierea poate fi recursivă
se recomandă stabilirea unei asocieri de tip 1-1 între cele două entități
se recomandă stabilirea unei asocieri de tip m-n între cele două entități
1. COUNT 4. AVG
2. SUM 5. SUBSTR
3. MIN 6. MAX
7. Fie tabela
ANGAJATI (id_angajat NUMBER(6), nume VARCHAR2(32), prenume
VARCHAR2(32),id_manager NUMBER(6))
și următoarea interogare:
SELECT CONCAT(nume, (SUBSTR(LOWER(prenume), 4))) parola FROM angajati;
Care dintre următoarele afirmații este adevărată?
9. Fie tabela comenzi (nr_com number(5) primary key, data_c date, cod_f number(5)) şi
următoarele instrucțiuni:
A. SELECT count(nr_com) FROM comenzi WHERE extract(year from data_c)=2000;
13. Care dintre următoarele comenzi va șterge cu succes tabela LOCAȚII din baza de date?
ALTER TABLE locatii REMOVE;
DELETE TABLE locatii;
TRUNCATE TABLE locatii;
DROP TABLE locatii;
select nume-departament
from angajati
where sex = 'M'
group by nume-departament
having avg (salariu) > (select avg (salariu) from angajati);
numele departamentului în care salariul mediu este mai mare decât salariul
mediu din companie;
numele departamentului în care salariul mediu al angajaţilor de sex masculin
este mai mare decât salariul mediu din companie;
17. Trebuie să modificați coloana Valoare din tabela Comenzi. Coloana trebuie configurată
astfel încât să accepte o valoare implicită de 250. Tabelul conține date pe care trebuie
să le păstrați. Ce comanda veți folosi?
ALTER TABLE Comenzi
CHANGE DATATYPE valoare TO DEFAULT 250;
DROP TABLE Comenzi;
CREATE TABLE Comenzi
(nrcomanda varchar2(5) CONSTRAINT pk_orders_01 PRIMARY KEY,
idclient varchar2(5) REFERENCES clienti (clientid),
data_comanda date,
valoare DEFAULT 250);
19. Care dintre următoarele afirmații referitoare la operatorii modelului de date relațional
pentru baze de date este adevărata:
produsul cartezian presupune construirea unei noi relaţii a cărei extensie
cuprinde toate combinaţiile tuplurilor relaţiilor iniţiale;
5. generează eroare din cauza faptului că subcererea poate returna mai multe rânduri
28. Care dintre următorii operatori returnează toate înregistrările din ambele tabele,
după eliminarea duplicatelor:
UNION ALL
MINUS
JOIN
UNION
3.Urmatoarea comanda:
update angajati set salariul = salariul * 1.1 where id_angajat in (select id_angajat from
angajati where level = 3 connect by prior id_angajat = id_manager start with id_manager is
null);
Va majora cu 10% salariile angajatilor aflati pe nivelul 3 ierarhic;
4.Care din urmatoarele clauze sunt adecvate secventelor sau cererilor ierarhice:
NOCYCLE + PRIOR + START WITH
8.Sa se precizeze care dintre cererile SQL-Oracle de mai jos afiseaza ultima zi din luna
curenta?
SELECT last_day(sysdate) from dual
11.Comanda UPDATE:
Modifica inregistrarile unei tabele; + Este o comanda din Limbajul pentru Manipularea
Datelor LMD
13.Clauza HAVING:
Nu este o clauza obligatorie;
Permite stabilirea conditiilor pe functii de grup
18.Fie interogarea: SELECT CASE NULL WHEN NULL THEN ’I ’ ELSE ’2’ END FROM DUAL;
Ce afiseaza aceasta? 2
Ak:Dk), iar toate tuplurile relatiei P concatenate cu tuplurile relatiei Q formeaza tuplurile
relatiei R. Precizati ce operator al algebrei relationale realizeaza aceasta operatie:
diviziunea
27.Pentru a adauga o coloana discount in tabela clienti, care sa aiba urmatoarele valori
-daca limita_credit < 1000, discount 10%
-daca limita_credit intre 1000 and 3000, discount 15%
-daca limita_credit peste 3000, discount 20%
Ce comenzi vor fi utilizate?
ALTER, UPDATE
29.Fie tabela COMENZI (nr_com NUMBER(5) PRIMARY KEY, data DATE) si urm instructiuni:
I1. SELECT count(nr_com) from COMENZI where extract(year from data)=2018;
I2. SELECT count(nr_com) from COMENZI where to_char(data,’yyyy’)=’2018’;
I3. SELECT count(nr_com) from COMENZI where to_date(data,’yyyy’)=’%2018’;
Instructiunea I3 este eronata
Instructiunile I1 si I2 returneaza acelasi rezultat
32.Care dintre urmatoarele clauze/optiuni sunt specifice atat secventelor cat si cererilor
ierarhice
START WITH. NOCYCLE
34.Comanda ALTER:
Actualizeaza structura tabelei
Modifica coloanele unei tabele
36.VIEW-urile
Permit stocarea interogarilor si utilizarea ulterioara a acestora
Pot avea clauza WITH CHECK OPTION pentru a proteja datele
2. Care din următoarele afirmații este adevărată despre nivelul conceptual al bazelor
de date (1p):
a) Reprezintă viziunea dezvoltatorului de aplicație asupra bazei de date
b) Reprezintă viziunea programatorului asupra bazei de date
c) Reprezintă viziunea administratorului asupra bazei de date
d) Reprezintă viziunea managerului asupra bazei de date
e) Reprezintă viziunea beneficiarului asupra bazei de date
1. Cunoştințele (1p):
a) Constituie o colecție de date şi explicații asociate
b) Constituie interpretări despre un obiect, eveniment sau proces
c) Sunt folosite în modelare, simulare
2. Care din următoarele mapări din modelul relațional este corectă (1p)?
a) Atribut->Rând
b) Identificator Secundar->Cheie Externă
c) Identificator Primar->Cheie Unică
d) Instanță->Tabelă
e) Entitate->Tabelă
4. Fie tabela COMENZI (nr_com number(5) primary key, data_c date, cod_f
number(5)) şi următoarele instrucțiuni
1. SELECT extract(year from data_c), count(nr_com) FROM comenzi WHERE
extract(year from data_c)<2000; (lipseste group by)
2. SELECT count(nr_com) FROM comenzi WHERE to_char(data_c,’yyyy’)=’2000’;
3. SELECT count(nr_com) FROM comenzi WHERE
to_date(data_c,’yyyy’)=’%2000’; (to_date nu se scrie aşa)
Indicați răspunsurile corecte (1p):
a) Instrucțiunile 1, 2, 3 returnează acelaşi rezultat
b) Instrucțiunile 2 şi 3 returnează acelaşi rezultat
c) Instrucțiunea 2 este eronată
d) Instrucțiunile 1 şi 3 sunt eronate
e) Toate instrucțiunile sunt eronate
6. Fie tabelele:
ANGAJATI (marca number(3), nume_angajat varchar2(35), data_angajarii date,
functie varchar2(15), salariu number(5), id_departament number(3))
şi
DEPARTAMENTE ( id_departament number (3), denumire_dep varchar2(20))
Ştiind că există mai mulți angajați în fiecare departament, precum şi faptul că există
mai multe departamente, precizați ce va afişa următoarea interogare SQL-Oracle (1p):
SELECT nume_angajat, denumire_dep
FROM angajati a, departamente d
WHERE a.id_departament = d.id_departament and
denumire_dep != 'Vanzari’;
a) Numele angajaților şi a a departamentelor pentru toți angajații, mai puțin cei din
departamentul Vânzări
b) Identificatorul departamentului, numele şi funcția pentru fiecare angajat care a
generat vânzări
c) Va afişa o eroare
d) Nu va afişa nici o înregistrare
e) Numele angajaților şi a a departamentelor pentru toți angajații din departamentul
Vânzări
5.Fie doua relatii T1 si T2, cu aceeasi schema. In urma unei operatoo pe cele doua relatii, se
obtine o noua relatie T3, cu aceeasi schema ca T1 si T2, care contine tuplurile comune si
necomune ale celor doua relatii, luate o singura data. Precizati ce operator al algebrei
relationale realizeaza aceasta operatie:
REUNIUNEA
19.Fie doua tabele T1 si T2. Jonctiunea externa permite:
*Vizualizarea tuturor inregistrarilor dintr-o anumita tabela (T1 sau T2) chiar daca nu exista
corespondent in cealalta tabela
6.Functiile la nivel de grup pot fi folosite in urmatoarele clauze ale unei interogari SQL:
SELECT, HAVING
GRILE
1. SGBD-ul oferă următoarele servicii de bază:
a. Arhivarea și dezarhivarea datelor
b. Gestiunea accesului concurenţial la date
c. Limbaj de programare visual pentru accesul la date
d. Scanarea datelor
e. Optimizarea datelor
2. Precizați care din serviciile de mai jos este pus la dispoziție de un DBMS relațional:
a. Difuzarea datelor
b. Analiza datelor
c. Salvarea și refacerea bazelor de date
d. Operativitatea datelor
e. Optimizarea și scanarea datelor
b. Reguli
c. Restricţii NOT NULL
d. Interogări
e. Operatori logici
6. Restricția CHECK:
a. Validează valoarea unei coloane
b. Reface datele în caz de eroare
c. Asigură ordonarea datelor
d. Împiedică redundanța datelor
e. Asigură backup-ul bazei de date
15. Vizualizarea:
a. Este o tabelă fizică
b. Este o tabelă cu cel mult o cheie unică
c. Este un obiect de tip container
d. Nu stochează date
e. Nu se comportă ca un tabel
56. Instrucțiunea SELECT MOVIE_TITLE FROM MOVIE WHERE MOVIE_TITLE LIKE '%on%';
a. Afișează numai titlurile de filme care conțin şirul de caractere „ON"
b. Afișează numai titlurile de filme care conțin şirul de caractere „on"
c. Afișează titlurile de filme care se termină cu şirul de caractere „on"
d. Afișează titlurile de filme care conţin şirul de caractere „on" sau „ON" sau „On" sau
„oN"
e. Afișează titlurile de filme care încep cu şirul de caractere „on"
60. Alegeți instrucțiunea corectă care afișează fiecare cod de gen, împreună cu numărul de
filme
asociate fiecărui cod:
a. SELECT Movie_Genre_Code, SUM(Pret_Dvd) AS Nr_Filme_Cod FROM Movie GROUP BY
Movie_Genre_Code;
b. SELECT Movie_Genre_Code, COUNT(*) AS Nr_Filme_Cod FROM Movie ORDER BY
Movie_Genre_Code;
c. SELECT Movie_Genre_Code, COUNT(*) AS Nr_Filme_Cod FROM Movie GROUP BY
Movie_Genre_Code;
d. SELECT COUNT(*) AS Nr_Filme_Cod FROM Movie ORDER BY Movie_Genre_Code;
e. SELECT Movie_Genre_Code, Sum(Id_Film) AS Nr_Filme_Cod FROM Movie ORDER BY
Movie_Genre_Code;
67. O auto-uniune:
a. Nu poate fi realizată în sistemul MySQL
b. Include și coloanele care au aceleași pseudonime
c. Se aplică în cazul restricțiilor recursive
d. Se aplică în cazul relaţiilor recursive
e. Folosește clauza AUTOUNION în sintaxa instrucțiunii
68. Subinterogarea:
a. se referă la o instrucţiune SELECT care conţine o instrucţiune SELECT subordonată
b. Poate fi realizată cu operatorul INTERSECT
c. Se aplică în cazul relațiilor de tipul 1 la 1
d. Nu este implementată în sistemul MySQL
Grile date:
Alegeți o opțiune:
a. 5
b. 2
c. 1+4
d. 3+4
2.Fie două relații T1 și T2, cu aceeași schemă. In urma unei operații pe cele două relații, se
obține o nouă relație T3, cu aceeași schemă ca T1 și T2, care conține tuplurile comune și
necomune ale celor două relații, luate o singură dată. Precizați ce operator al algebrei
relaționale realizează această operație:
Alegeți o opțiune:
a. selecția
b. proiecția
c. reuniunea
d. intersecția
Extras curs: Reuniunea •Este o operaţie definită pe două relaţii, R1 şi R2 , ambele cu aceeaşi
schemă, prin care se obţine o nouă relaţie R3 , cu schema identică cu R1 şi R2 , dar având ca
extensie tuplurile din R1 şi R2 , luate împreună o singură dată.
3.Avand doua relatii R1 si R2, operatorul care permite crearea unei relatii R3 formata din
inregistrarile din R1 si R2, fara a elimina duplicatele este:
Alegeți o opțiune:
a. UNION ALL
b. JOIN
c. UNION
d. FULL JOIN
4.Care dintre urmatoarele clauze este obligatorie pentru parcurgerea unei structuri
ierarhice?
Alegeți o opțiune:
a. CONNECT BY
b. ORDER BY
c. GROUP BY
d. CONNECT_BY_ISLEAF
5.Secventele:
Alegeți o opțiune:
a. permit realizarea unor cautari mai rapide in baza de date
b. permite utilizarea unor denumiri alternative pentru tabele atunci cand denumirile
acestora sunt dificil de utilizat
c. asigura un nivel suplimentar de siguranta intre utilizator si baza de date
d. genereaza valori pentru atribute care au restrictia PRIMARY KEY sau UNIQUE
Alegeți o opțiune:
a. NULL
b. NVL2
c. NVLIF
d. VARCHAR2
Grile Curs:
Grila 1: Într-o bază de date relațională, fie relația R1. În urma aplicării unei operații pe relația
R1 se obține o nouă relație R2, care conține doar o parte dintre atributele relației R1 şi
tupluri distincte. Precizați ce operator al algebrei relaționale realizează această operație:
a) produsul cartezian
b) diferența
c) reuniunea
d) selecția
e) proiecţia
Fie doua tabele COMENZI { nr_com number(5), data_c date, cod_f number(5) } si FIRME
{ Cod_f number(5), den varchar2(32), cf varchar2(10) } cu cate 20 de inregistrari fiecare.
Care dintre urmatoarele comenzi afiseaza firmele care nu au dat nicio comanda:
-SELECT f.den from FIRME where cod_f<>ALL(SELECT cod_f from COMENZI where cod_f is
not null);
-SELECT f.den from FIRME where cod_f not IN (SELECT cod_f from COMENZI where cod_f is
not null);
Fie tabele COMENZI { nr_com number(5), data_c date, cod_f number(5) } si urmatoarele
instructiuni
SELECT count(*) from COMENZI where extract(year from data_c) = 2000;
SELECT cout(nr_com) from COMENZI where to_char(data_c, ‘yyyy’) = ‘2000’;
Returneaza cele doua instructiuni acelasi rezultat? DA
2. Calculul relaţional:
+a) are drept construcție de bază expresia de calcul tuplu sau expresia de calcul
domeniu
b) este implementat în limbajul ISBL
c) conține operatorul de joncțiune
d) stă la baza limbajelor procedurale universale
+e) foloseşte noțiunea de formulă bine definită
Grila 2
•În modelul de date relațional pentru BD:
a)atributele care au rol în realizarea legăturilor între tabele se numesc
chei compuse
b)există noțiunea de restricția entității
c)legăturile între tabele se descriu în LMD
d) există noţiunea de schema tabelei
e)selecția şi existența sunt operatori din algebra relațională
Grila 3
Restricții de integritate ale modelului relațional sunt:
a)de domeniu, entităţii
b)cheie unică, de aplicație
c)temporară, existențială
d)selecție, cheie primară
e)cheie externă, de actualizare
Grila 4
•Fie două tabele COMEZI şi FIRME fiecare având câte 20 de înregistrări. O
firmă poate da mai multe comenzi, o comandă trebuie dată de către o
singură firmă. Care din următoarele afirmații este adevărată:
a)Un left join între COMEZI şi FIRME nu poate returna acelaşi număr de
înregistrări ca un right join între FIRME şi COMENZI
b)Un full join între cele două tabele nu poate returna acelaşi număr de
înregistrări ca un left join între FIRME şi COMENZI
Grila 5
•Specificați care dintre următorii operatori nu face parte din grupa
operatorilor standard din algebra relațională:
a) selecția
b) proiecția
c) joncțiunea
d) produsul cartezian
e) cuantificatorul existenţial
Grila 6
•Se consideră tabela: produse (codp number(3), denp varchar2(25), um varchar2(3))
Comanda SQL:
SELECT DISTINCT codp, denp
FROM produse
WHERE codp > 100
ORDER BY denp;
implementează următorii operatori din algebra relațională:
a) proiecție şi joncțiune
b) selecție şi intersecție
c) selecție şi reuniune
d) selecţie şi proiecţie
e) ordonare şi selecție
Grila 7
•Printre operatorii algebrei relaționale se regăsesc:
a) reuniunea, produsul cartezian, intersecția, disjuncția;
b) intersecția, diviziunea, joncțiunea, conjuncția;
c) produsul cartezian, selecţia, proiecţia, reuniunea;
d) joncțiunea, proiecția, negația, reuniunea.
e) intersecția, diviziunea, diferența, conjuncția.
Grila 8
•În modelul relațional de date:
a) proiecția, joncțiunea şi închiderea tranzitivă sunt operatori din
algebra relațională
b) atributele care au rol în realizarea legăturilor între tabele se numesc
chei compuse
c) legăturile între tabele se descriu în LMD
26. Fie doua tabele COMENZI {NR_COM number(5), DATA_C date, COD_F number(5)} si
FIRME{ COD_F number(5), DEN varchar2(32), CF varchar2(10)} cu cate 20 de inregistrari
fiecare. Catre dintre urmatoarele comenzi afiseaza functiile care nu au dat nicio comanda:
1. SELECT f.den from COMENZI c, FIRME f, WHERE c.cod_f=f.cod_f from GROUP BY f.den
HAVING count(*)=0;
2. SELECT f.den from COMENZI c, FIRME f, WHERE cod_f<>ANY(SELECT cod_f from
COMENZI);
3. SELECT f.den from COMENZI c, FIRME f, WHERE cod_f<>ANY(SELECT cod_f from
COMENZI where cod_f is not null);
4. SELECT DISTINCT f.den from COMENZI c, FIRME f, WHERE c.cod_f<>f.cod_f;
5. SELECT f.den from FIRME where cod_f not in (SELECT cod_f from COMENZI where cod_f
is not null);
a)1+2
b)2+4+5
c)2+5
d)toate
+e)3+5
Grila 1
Normalizarea relațiilor din cadrul bazelor de date relaționale
oferă posibilitatea:
a) eliminării anomaliilor de adăugare de noi tupluri
b) sporirii timpului de răspuns la cererile utilizatorilor
c) eliminării protecției datelor
d) regăsirii tuplurilor după mai multe chei secundare
e) eliminării anomaliilor de actualizare a valorilor asociate
atributelor tuplurilor
Grila 2
Grila 3
O tabelă este în FN2 dacă şi numai dacă este în FN1 şi:
a) fiecare atribut non-cheie al tabelei depinde în mod netranzitiv de cheia
primară
b) fiecare atribut non-cheie al tabelei este dependent funcţional complet
de cheia primară
c) nu conține două sau mai multe dependențe multi-valoare
d) fiecare dependență joncțiune este generată printr-un candidat cheie al
tabelei
e) fiecare atribut non-cheie al tabelei este dependent funcțional parțial
de cheia primară
Grile ASE
1. În modelul relațional pentru baze de date:
a) există noțiunea de tip înregistrare
b) atributele care au rol în realizarea legăturilor între tabele se numesc chei
compuse
c) legăturile între tabele se descriu în LMD
d) există noţiunea de schema tabelei
e) proiecția, negația şi existența sunt operatori din algebra relațională
-organizat, structurat
-accesibil mai multor utilizatori in timp util
-structurat, cu o redundant minima si controlata
-organizat, coerent
e. Relatie
Care din urmatoarele desemneaza clauze care pot aparea in interogari SQL:
1. SET
2. GROUP BY
3. CONNECT BY
4. HAVING
5. MODIFY
Alegeti una sau mai multe optiuni:
a. 1+3+5
b. 1+3+4
c. 2+3+4
d. 2+4+5
Numarul total de randuri din tabela angajati pentru angajatii cu vechimea mai mare de 5 ani
Numarul de salarii distincte din tabela angajati
Cel mai mare salariu din tabela angajati
Comanda este eronata
Va returna numarul de randuri din tabela angajati pentru care valoarea coloanei salariu nu
este NULL
Care dintre urmatoarele desemneaza clause care pot aparea in interogari SQL:
Alegeti una sau mai multe optiuni:
HAVING
MODIFY
GROUP BY
ORDER BY
SET
Care dintre urmatoarele variante privind scopul normalizarii relatiilor din cadrul bazelor de
date relationale este corecta:
Alegeti una sau mai multe optiuni:
Reducerea complexitatii sistemului informatic
Sporirea calitatii datelor de intrare
Sporirea vitezei de raspuns la cererile utilizatorilor
Verificarea corelatiilor logice dintre atributele relatiei
Inlaturarea anomaliilor de actualizare
5. generează eroare din cauza faptului că subcererea poate returna mai multe rânduri
Trebuie să modificați coloana Valoare din tabela Comenzi. Coloana trebuie configurată astfel
încât să accepte o valoare implicită de 250. Tabelul conține date pe care trebuie să le
păstrați. Ce comanda veți folosi?
Alegeți o opțiune:
a. DROP TABLE Comenzi;
CREATE TABLE Comenzi
(nrcomanda varchar2(5) CONSTRAINT pk_orders_01 PRIMARY KEY,
idclient varchar2(5) REFERENCES clienti (clientid),
data_comanda date,
valoare DEFAULT 250);
b. ALTER TABLE Comenzi
CHANGE DATATYPE valoare TO DEFAULT 250;
c. DELETE TABLE Comenzi;
CREATE TABLE Comenzi
(nrcomanda varchar2(5) CONSTRAINT pk_orders_01 PRIMARY KEY,
idclient varchar2(5) REFERENCES clienti (clientid),
data_comanda date,
valoare DEFAULT 250);
d. ALTER TABLE Comenzi
MODIFY (valoare DEFAULT 250);
Fie tabela
Alegeți o opțiune:
Care dintre următoarele comenzi va șterge cu succes tabela LOCAȚII din baza de date?
Alegeți o opțiune:
a. DELETE TABLE locatii;
b. TRUNCATE TABLE locatii;
c. DROP TABLE locatii;
d. ALTER TABLE locatii REMOVE;
Fie două entități COMENZI şi FIRME. Care dintre următoarele afirmații sunt corecte:
Alegeți o opțiune:
a. se recomandă stabilirea unei asocieri de tip m-n între cele două entități
b. se recomandă stabilirea unei asocieri de tip 1-n între cele două entităţi
c. asocierea poate fi recursivă
d. se recomandă stabilirea unei asocieri de tip 1-1 între cele două entități
Care din urmatoarele desemneaza clause care pot aparea in comenzi SQL de manipulare a
datelor:
a. ADD
b. SET
c. HAVING
d. ORDER BY
e. MODIFY
Fie tabelele:
Angajati (marca number(5) primary key, nume varchar2(32), id_departament number);
Departamente (id_departament number references angajati (id_departament), denumire
varchar2(32));
Se considera urmatoarea comanda SQL-Oracle:
SELECT * FROM angajati
WHERE EXISTS
( SELECT * FROM departamente
WHERE UPPER(denumire) = ‘IT’)
Care dintre urmatoarele afirmatii sunt corecte:
a. Se afiseaza informatii despre angajatii care lucreaza in departamentrul returnat de
subcerere
b. Este utilizata o functue SQL scalara
c. Se genereaza eroare din cauza faptului ca subcererea poate returna mai multe
randuri
d. Se genereaza eroare din cauza folosirii incorecte a operatorului EXISTS
e. Se afiseaza informatii despre toti angajatii, cata vreme subcererea returneaza vreun
rand
c. Distribuirea datelor
d. Crearea de tabele virtuale neactualizate
e. Crearea de indecsi, clustere sit abele partitionate
Se considera tabela:
Angajati (marca number(3), nume_angajat varchar2(35), data_angajare date, functie
varchar2(15), salariu number(5), id_departament number(3))
Care din urmatoarele variante de cereri SQL-Oracle vor returna valori numerice
a. SELECT SYSDATE – 7 FROM angajati
b. SELECT 1+2 FROM angajati
c. SELECT ROUND(data_angajare, ‘YEAR’) FROM angajati
d. SELECT SYSDATE – data_angajare FROM angajati
e. SELECT 1+2 FROM dual
Se considera tabela:
Clienti (codc number(3), denumirec varchar2(25), localitate varchar2(30))
Specificati ce se intampla cand se utilizeaza urmatoarea comanda SQL-Oracle:
DELETE * FROM clienti;
a. Comanda este eronata
b. Se sterg toate liniile din tabela client
c. Se actualizeaza tabela
d. Se sterge o singura linie din tabela
e. Se sterge denumirea tabelei
Se considera tabela:
Clienti (codc number(3), denumirec varchar2(25), localitate varchar2(30))
Specificati ce se intampla cand se utilizeaza urmatoarea comanda SQL-Oracle:
DELETE FROM clienti;
a. Se sterg toate liniile din tabela client
b. Se sterge denumirea tabelei
c. Se executa o comanda de actualizare a datelor
d. Comanda este eronata
e. Se sterge un singur rand din tabela
Se considera tabelele:
Functii(id_functie varchar2(7), denumire_functie varchar2(30))
Si
Angajati (id_angajat number(3), nume varchar2(25), salariul number, id_functie varchar2(7)
references functii (id_functie))
Fie comanda SQL-Oracle
SELECT nume, salariul FROM angajati
WHERE id_functie IN
(SELECT id_functie FROM functii
WHERE denumire_functie = ‘IT_PROG’)
ORDER BT nume, salariul DESC;
Care dintre urmatoarele afirmatii sunt adevarate
a. Afiseaza informatii despre angajatii care detin functia returnata de subcerere
b. Cata vreme subcererea returneaza vreun rand, se afiseaza informatii despre toti
angajatii
c. Implementeaza operatorul relational de selectie
d. Afiseaza informatiile solicitate ordonate descrescator in functie de nume si de salariu
e. Genereaza eroare din cauza faptului ca subecererea poate returna mai multe randuri
b. FN1
c. FN2
d. FN3
e. FN4
Se considera tabela:
Produse (codp number(3), denp varchar2(25), um varchar2(3))
In SQL-Oracle, comanda:
CREATE VIEW produse1 AS
SELECT * FROM produse WHERE codp >= 22;
a. Modifica tabela de baza produse si creeaza o tabela virtuala produse1
b. Implementeaza operatorul relational de selectie
c. Creeaza un fisier pe disc pentru tabela produse
d. Creeaza o tabela virtuala dintr-o singura tabela de baza
e. Creeaza un index pentru tabela de baza produse
Se considera tabela:
Angajati (marca number(3), nume_angajat varchar2(35), data_angajarii date, functie
varchar2(15), salariu number(5), id_departament number(3)), care contine cel putin 5
randuri
Specificati ce va afisa urmatoarea interogare SQL-Oracle:
SELECT COUNT (salariu)
FROM angajati;
a. Numarul total de randuri din tabela angajati pentru angajatii cu vechimea mai mare
de 5 ani
b. Numarul de salarii distincte din tabela angajati
c. Va returna numarul de randuri din tabela angajati pentru care valoarea coloaneei
salariu nu este NULL
d. Comanda este eronata
e. Cel mai mare salariu din tabela angajati
Sa se afiseze adresa locatiei unde se afla cele mai multe departamente, precum si numarul
de departamente
Sa se construiasca o tabela virtuala care sa contina numarul de client care au dat cel putin o
comanda, precum si numarul celor care nu au dat nicio comanda