Sunteți pe pagina 1din 6

MODEL EXAMEN Baze de date financiar-contabile

1. Știind că pentru fiecare contract încheiat ce are o durată fixă, societatea desemnează un
singur angajat responsabil cu derularea acestuia, iar un angajat poate răspunde de mai
multe contracte, care din următoarele afirmații este corectă?
A. NrContract determină functional CodAngajat, adică NrContract -> CodAngajat
B. CodAngajat determină functional NrContract, adică CodAngajat -> NrContract
C. Între CodAngajat si DurataContract exista dependenta functionala tranzitiva prin
intermediul NrContract, adică CodAngajat -> NrContract -> DurataContract
D. Între grupul (CodAngajat, NrContract) si DurataContract exista dependenta
functionala completa NrContract, adică (CodAngajat, NrContract)-> DurataContract

2. Care din următoarele tabele este in FN3, știind ca pentru fiecare contract încheiat ce are o
durată fixă, societatea desemnează un singur angajat responsabil cu derularea acestuia, iar
un angajat poate răspunde de mai multe contracte?
A. Angajat ( CodAngajat , NumeAngajat, PrenumeAngajat, TelefonAngajat, NrContract)
B. Contract ( NrContract, DataIncheiereContract, DurataContract, CodAngajat )
C. Contract ( NrContract, DataIncheiereContract,DurataContract,CodAngajat,
NumeAngajat)
D. AngajatContract ( CodAngajat,NrContract, DataIncheiereContract, DurataContract)

3. Se consideră următoarele tabele:


Judet (CodJudet, Denumire) Oras (CodOras, Denumire, NumarLocuitori, CodJudet)
Care este fraza SQL care va afișa toate județele cu mai mult de 4 orașe.
A. SELECT CodJudet FROM Oras GROUP BY CodJudet HAVING Count(CodOras) >4;
B. SELECT CodJudet FROM Oras WHERE Count(CodOras) >4 GROUP BY CodJudet ;
C. SELECT CodJudet FROM Oras GROUP BY CodJudet HAVING SUM(CodOras) >4;
D. SELECT CodJudet FROM Oras GROUP BY CodOras HAVING Count(CodOras) >4;

4. Se consideră următoarele tabele:


Judet (CodJ, DenumireJ) Oras (CodO, DenumireO, NrLocuitori, CodJ)
Care este fraza SQL care va afișa toate județele care au mai mult de 4 orașe cu peste
20000 de locuitori.
A. SELECT DenumireJ FROM Judet INNER JOIN Oras ON Judet.CodJ = Oras.CodJ
WHERE NrLocuitori>20000 GROUP BY DenumireJ HAVING Count(CodO)>4;
B. SELECT DenumireJ FROM Judet INNER JOIN Oras ON Judet.CodJ = Oras.CodJ
WHERE NrLocuitori>20000 AND Count(CodO)>4 GROUP BY DenumireJ ;
C. SELECT DenumireJ FROM Judet INNER JOIN Oras ON Judet.CodJ = Oras.CodJ
WHERE NrLocuitori>20000 GROUP BY CodO HAVING Count(CodO)>4 ;
D. SELECT DenumireJ FROM Judet INNER JOIN Oras ON Judet.CodJ = Oras.CodJ
WHERE NrLocuitori>20000 GROUP BY DenumireJ,NrLocuitori

5. Se considera tabelele
Facturi(NrFactura, DataFactura, Valoare, CodClient)
Client(CodClient, Denumireclient, Adresa)
Care este fraza SQL care va diminua cu 10% valoarea facturilor din 2015.
A. UPDATE Facturi SET Valoare = 0.9 * Valoare WHERE YEAR(DataFactura)=2015
B. UPDATE Facturi SET Valoare = 1.1 * Valoare WHERE YEAR(DataFactura)=2015
C. UPDATE Client SET Valoare = 0.9 * Valoare WHERE YEAR(DataFactura)=2015
D. SELECT Valoare , 0.9 * Valoare FROM Facturi WHERE YEAR(DataFactura)=2015

6.Câte rânduri (înregistrări) rezulta în


urma execuției frazei SQL?

SELECT YEAR(DataPlata) as An,


SUM(SumaPlatita) as PLATI
FROM Plata
GROUP BY YEAR(DataPlata)

A. 3 înregistrări B. 2 înregistrări C. 0 înregistrări D. eroare

7. Se considera tabelul
Angajati(CNP, Nume, Prenume, Salariu, NrCopii)
Care este fraza SQL care va afișa toți angajații al căror nume începe cu litera A și se termina
cu E, au salariu între 800 și 900 de euro și au 2 sau 4 copii.
A. SELECT * FROM Angajati WHERE Nume = "A*E" AND Salariu BETWEEN 800 AND
Salariu<=900 AND (NrCopii=4 OR NrCopii=2)
B. SELECT * FROM Angajati WHERE LEFT(Nume,1)="A" AND RIGHT(Nume,1)="E" AND
Salariu BETWEEN (800,900) AND NrCopii in (2,4)
C. SELECT * FROM Angajati WHERE Nume Like "A*E" AND Salariu Between 800 AND
900 AND NrCopii BETWEEN (2,4)
D. SELECT * FROM Angajati WHERE LEFT(Nume,1)="A" AND RIGHT(Nume,1)="E" AND
Salariu IN(800, 900) AND NrCopii BETWEEN 2 AND 4

8. Selectați afirmația falsă


referitoare la următoarele tabele
A. În model se pot identifica 2
chei primare și o cheie externă
B. Campul CodClient din tabelul
Factura este cheie primara.
C. Nu este respectată integritatea
referentiala a datelor
D. În cele 2 tabele sunt, în total, 7
înregistrări.
9. Se consideră tabelele
Document (CodDocument, DataDocument,Valoare)
Operatie (CodOperatie, DataOperatie, CodDocument)
Care este fraza SQL care va afișa toate operațiile contabile înregistrate în luna februarie a
anului 2014 pentru documentele cu o valoare mai mare de 1000 lei, sau în luna martie 2014
pentru documentele cu o valoare mai mică de 200 de lei.
SELECT CodOperatie, Valoare FROM Document INNER JOIN Operatie ON
Document.CodDocument = Operatie.CodDocument
WHERE ...................................................;
A. (Month([DataOperatie])=2 AND Year([DataOperatie])=2014 AND
Document.Valoare>1000)
OR ( Month([DataOperatie])=3 AND Year([DataOperatie])=2014 AND
Document.Valoare<200 )
B. Month([DataOperatie]) IN (1,2) AND Year([DataOperatie])=2014 AND
(Document.Valoare>1000 OR Document.Valoare<200)
C. ( Month([DataOperatie])="Februarie" AND Year([DataOperatie])=2014 AND
Document.Valoare>1000)
OR ( Month([DataOperatie])="Martie" AND Year([DataOperatie])=2014 AND
Document.Valoare<200)
D. (Month([DataOperatie])=2 AND Year([DataOperatie])=2014 OR Month([DataOperatie])=3
AND Year([DataOperatie])=2014) OR (Document.Valoare >1000 AND
Document.Valoare<200)

10. Se considera tabelul:


Salariati (CodS, Nume, Prenume, DataNastere, DataAngajare, Departament)
Care este fraza SQL care va șterge salariatii angajati în ultimele 60 de zile la
departamentele Contabilitate, Financiar, Marketing?
A. DELETE * WHERE Departament IN("Contabilitate", "Financiar", "Marketing") AND
DataAngajare>60
B. DELETE SALARIATI WHERE Departament IN("Contabilitate", "Financiar", "Marketing")
AND DateDiff("d",DataAngajare, Now())<60
C. DELETE FROM SALARIATI WHERE Departament IN("Contabilitate", "Financiar",
"Marketing") AND DataAngajare>Date()-60
D. DELETE FROM SALARIATI WHERE Departament IN("Contabilitate", "Financiar",
"Marketing") AND DataAngajare>60

11. Știind ca un concediu se realizează pentru un singur angajat, are o durata fixa și un
singur tip, selectați afirmația corectă privind tabelul următor:
CONCEDII (NumarConcediu, DataInceput, DataFinal, TipConcediu, CNPAngajat,
NumeAngajat, PrenumeAngajat)
A. Tabelul respecta FN3 (forma normala 3) C. Tabelul nu respectă nicio forma normala.
B. Tabelul respecta FN1 (forma normala 1) D. Tabelul nu respecta FN2 (forma normala 2)

12. Care din următoarele tabele este in FN3, știind ca pentru fiecare client se menționează și
codurile CAEN de care aparține, precum și anul obținerii fiecărui cod CAEN. Un cod CAEN
reprezintă un domeniu de activitate în care operează o firmă. Un cod CAEN poate fi atribuit
mai multor firme.
A. ClientCAEN ( CUIClient, CodCAEN, AnObtinereCAEN)
B. Client(CUIClient,DenumireClient,AdresaClient,TelefonClient,CodCAEN, AnObtinereCAEN)
C. CAEN ( CodCAEN, DenumireCAEN, AnObtinereCAEN, CUIClient)
D. ClientCAEN ( CUIClient, CodCAEN, AnObtinereCAEN, DenumireClient )

13. Având în vedere că în toate situațiile


posibile A <> NULL, B <> NULL, C <>
NULL, marcați răspunsul fals.

A. Gradul tabelului Tabel2 este 3 C. Cheile primare nu sunt corect definite


B.Primul tabel în care este posibil să se D. Primul tabel în care este posibil să se
introducă o înregistrare este Tabel1 introducă o înregistrare este Tabel1

14. Știind că un contract se încheie între societatea de consultanță și un singur client pentru
fiecare contract încheiat, societatea desemnează un singur angajat responsabil cu derularea
acestuia, selectați răspunsul corect:
A. Este dependenta funcțională netranzitiva între atributele Nrcontract și CUIClient
Nrcontract ->CUIClient
B. Este dependenta funcțională netranzitivă între atributele Nrcontract și DenumireClient
Nrcontract ->DenumireClient
C. Este dependenta funcțională netranzitiva între atributele Nrcontract și NumeAngajat
Nrcontract ->NumeAngajat
D. Este dependenta funcțională completa netranzitivă între grupul de atribute ( Nrcontract,
CUIClient ) si SumaContract adica (Nrcontract, CUIClient ) -> SumaContract

15. Știind că pentru fiecare client se menționează și codurile CAEN de care aparține,
precum și anul obținerii fiecărui cod CAEN. Un cod CAEN reprezintă un domeniu de
activitate în care operează o firmă. Un cod CAEN poate fi atribuit mai multor firme, selectați
răspunsul corect:
A. Este dependenta funcțională netranzitivă completa între atributul CodCAEN si atributul
AnObtinereCAEN adica CodCAEN -> AnObtinereCAEN
B. Este dependenta funcțională netranzitivă completa între atributul CUIClient si atributul
AnObtinereCAEN adica CUIClient -> AnObtinereCAEN
C. Este dependenta funcțională netranzitivă completa între grupul de atribute (CUIClient,
CodCAEN, AnObtinereCAEN ) si atributul DenumireClient adica (CUIClient, CodCAEN,
AnObtinereCAEN ) -> DenumireClient
D. Este dependența funcțională netranzitivă completa între grupul de atribute (CUIClient,
CodCAEN) și atributul AnObtinereCAEN adică(CUIClient,CodCAEN)-> AnObtinereCAEN
16. Care din următoarele afirmații este Furnizori
adevărată, referitor la următoarele tabele? Cod Denumire Localitate
Clienți 1 ABC CL
Cod Denumire Localitate
1 ABC CL Rezultat
2 XYZ TM Cod Denumire Localitate
3 ABA CL 1 ABC CL

A. Tabelul Rezultat este rezultatul proiecției dintre tabelul Furnizori și Clienti


B. Tabelul Rezultat este rezultatul intersecției dintre tabelul Furnizori și Clienti
C. Tabelul Rezultat este rezultatul reuniunii dintre tabelul Furnizori și Clienti
D. Tabelul Rezultat este rezultatul compunerii dintre tabelul Furnizori și Clienti

17. Se considera tabelele :


Furnizor(CodF, Nume, Adresa) Receptie(NrRec, DataRec, CodF)
Care este fraza SQL care va afișa lista furnizorilor în ordinea crescătoare a numărului de
recepții realizate (în lista vor figura primii furnizorii de la care nu s-a realizat nicio recepție)
A. SELECT Furnizor.CodF, Nume, Count(NrRec) AS Total FROM Furnizor INNER JOIN
Receptie ON Furnizor.CodF=Receptie.CodF GROUP BY Furnizor.CodF, Nume ORDER BY
Count(NrRec) DESC
B. SELECT Furnizor.CodF, Nume, Count(NrRec) FROM Receptie RIGHT JOIN Furnizor ON
Furnizor.CodF=Receptie.CodF GROUP BY Furnizor.CodF, Nume ORDER BY Count(NrRec)
C.SELECT Furnizor.CodF, Nume, Count(NrRec) FROM Receptie RIGHT JOIN Furnizor ON
Furnizor.CodF=Receptie.CodF GROUP BY Receptie.NrRec ORDER BY Count(NrRec)
D. SELECT Furnizor.CodF, Nume, Count(NrRec) AS Total FROM Furnizor INNER JOIN
Receptie ON Furnizor.CodF=Receptie.CodF GROUP BY Furnizor.CodF, Nume ORDER BY
Count(NrRec)
18. Care din următoarele variante este
corectă pentru afișarea plăților totale din
doi ani precizați prin parametrii.
Plățile totale se vor afișa cumulat pentru
cei doi ani.

A. B.

C. D.

S-ar putea să vă placă și