PBD - teoretic

Description

Quiz on PBD - teoretic, created by Anamaria Ungureanu on 18/01/2021.
Anamaria Ungureanu
Quiz by Anamaria Ungureanu, updated more than 1 year ago
Anamaria Ungureanu
Created by Anamaria Ungureanu over 3 years ago
465
0

Resource summary

Question 1

Question
planificare serializabila:
Answer
  • este echivalenta cu cel putin o planificare seriala
  • pastreaza consistenta bazei de date
  • este acelasi lucru cu o planificare seriala

Question 2

Question
Autentificarea reprezinta:
Answer
  • acordarea unui drept sau privilegiu, care permite unui subiect sa aiba acces legitim la un sistem sau un obiect dintr-un sistem
  • un mecanism care determina daca un utilizator este cine pretinde a fi
  • orice situatie sau eveniment, intentionat sau neintentionat, care va afecta negativ un sistem, si în ultima instanta, o organizatie

Question 3

Question
Tranzactiile asigura:
Answer
  • confidentialitatea bazei de date
  • transparenta bazei de date
  • coerenta si siguranta bazei de date
  • izolarea bazei de date

Question 4

Question
Colectiile sunt:
Answer
  • referinte
  • tipuri de date definite de utilizatori
  • seturi de date care pot fi tratate ca parte a unei singure inregistrari intr-un tabel
  • date scalare

Question 5

Question
Indicati care sunt problemele care pot sa apara in cazul executiei tranzactiilor concurente susceptibile la interferente:
Answer
  • anomalia de actualizare pierduta;
  • anomalia de citire improprie;
  • anomalia de citire nereproductibila.

Question 6

Question
Pentru a indica faptul ca o data este de tip sir de caractere, in Oracle se foloseste simbolul:
Answer
  • ghilimele
  • nici unul dintre simbolurile amintite
  • apostrof
  • ambele simboluri

Question 7

Question
Pentru a acorda privilegii altor utilizatori se utilizeaza instructiunea:
Answer
  • CREATE
  • REVOKE
  • GRANT

Question 8

Question
Modificarea structurii unui tabel in Oracle poate fi realizata prin instructiunea
Answer
  • MODIFY STRUCTURE
  • ALTER TABLE
  • nu se poate modifica
  • DROP TABLE

Question 9

Question
Fie urmatoarea expresie in algebra relationala: echiv1 Ea este adevarata daca:
Answer
  • este intotdeauna valabila
  • multimea de atributa A1...An este inclusa in multimea de atribute B1...Bn
  • multimea de atribute B1....Bn este inclusa in multimea de atribute A1...A
  • nu stiu

Question 10

Question
Autorizarea consta în :
Answer
  • recunoasterea faptului ca orice pierdere sau lipsa de disponibilitate a datelor s-ar putea dovedi potential dezastruoasa
  • a determina daca un utilizator este cine pretinde a fi
  • acordarea unui drept sau privilegiu, care permite unui subiect sa aiba acces legitim la un sistem sau un obiect dintr-un sistem

Question 11

Question
In cazul optimizarii sistematice, costul unei interogari:
Answer
  • se estimeaza
  • nu este important
  • se calculeaza cu precizie

Question 12

Question
Rolurile reprezinta
Answer
  • administratori ai bazei de date
  • conturi de utilizator
  • grupuri de privilegii asociate cunoscute sub un nume generic

Question 13

Question
Comanda care anuleaza o tranzactie abandonata in SQL este:
Answer
  • Rollback
  • COMMIT
  • Savepoint
  • SET AUTOCOMMIT

Question 14

Question
Un server de baze de date trebuie sa se caracterizeze prin:
Answer
  • fiabilitate
  • nu exista astfel de cerinte
  • disponibilitate

Question 15

Question
Actualizarea datelor in tabele se realizeaza cu comanda:
Answer
  • MODIFY
  • UPDATE
  • ALTER

Question 16

Question
Diagrama din figuraprezinta modul de desfaurare aunei serii de tranzactii într-un sistem. - t0 semnifica momentul initial - tc semnificamomentul cresterii unui punct de control - tp semnifica momentul aparitiei unei pene Care din urmatoarele seturi de actiuni sunt corecte pentru recuperareabazei de date, la reluarea functionarii sistemului:
Answer
  • T1 si T4 - REDO; T5 si T2 - UNDO; T6 si T4 - nimic
  • T1 , T2 si T5 - REDO; T3, T4 si T6 - UNDO;
  • T4 si T5 - REDO; T1 si T6 - UNDO; T2 si T3 - nimic

Question 17

Question
Este corect ca atunci cand se doreste o comparare a valorilor dintr-un camp ce contine si valori .null. sa se foloseasca operatorii relationali?
Answer
  • True
  • False

Question 18

Question
Structura unei vederi poate fi vizualizata.
Answer
  • True
  • False

Question 19

Question
Fie trei tranzactii care se executa concurent, pentru care se deseneaza urmatorul graf: In ipoteza ca acesta este un graf de precedenta, aceasta situatie indica:
Answer
  • o planificare necascadabila
  • o planificare seriala
  • o planificare neserializabila
  • o planificare serializabila
  • o stare de interblocare

Question 20

Question
Ce tip de anomalie se manifesta in cazul planificarii de mai jos:
Answer
  • actualizare pierduta
  • citire improprie
  • citire nereproductibila

Question 21

Question
Functie de modul de blocare al unitatilor de acces, in SGBD-uri tranzactiile se executa cu diferite grade de izolare. Care este legatura dintre acestea si performantele interogarilor?
Answer
  • un grad de izolare al tranzactiilor scazut, creste performantele interogarilor
  • un grad de izolare al tranzactiilor mare, creste performantele interogarilor
  • nu exista nici o relatie intre cele doua

Question 22

Question
Indicati enunturile corecte:
Answer
  • Numai administratorul bazei de date poate avea privilegii complete pentru un tabel
  • Când un utilizator creaza un tabel, el primeste privilegii complete pentru acest tabel.
  • Proprietarul unui tabel este utilizatorul care l-a creat

Question 23

Question
Securitatea bazei de date se refera la:
Answer
  • elemente de hardware
  • elemente de software
  • persoane si date

Question 24

Question
La Secretariatul facultatii este necesara o lista a studentilor FIESC. In acest scop se pot formula urmatoarele interogari, asupra tabelului Student: A. SELECT * FROM student order by nume; B. SELECT * FROM student; C. SELECT nume from student order by nume; D. SELECT nume from student; Priviti aceste interogari EXCLUSIV prin prisma performantelor. Care ar fi ordinea in care sugerati executia lor de la cea mai performanta catre cea mai putin performanta.
Answer
  • D-B-C-A
  • A-C-B-D
  • A-B-C-D
  • C-B-D-A

Question 25

Question
Care din urmatoarele elemente NU pot exista in clauza WHERE a unei interogari SQL? Alegeti un raspuns.
Answer
  • operatori relationali
  • conditii de comparare
  • nume de coloane
  • nume de tabele

Question 26

Question
.Fie urmatorul tabel: ANGAJATI (idang, nume, prenume, salariu, data_ang, functie, departament). Se doreste o lista a angajatilor al caror salariu este mai mare decat salariul a cel putin un angajat din departamentul Resurse umane. Care din urmatoarele variante de interogare sunt corecte? A. SELECT nume, prenume, salariu FROM angajati WHERE salariu IN (SELECT max(salariu) FROM angajati WHERE departament='Resurse umane'); B. SELECT nume, prenume, salariu FROM angajati WHERE salariu >ANY (SELECT salariu FROM angajati WHERE departament='Resurse umane'); C. SELECT nume, prenume, salariu FROM angajati WHERE salariu <ANY (SELECT salariu FROM angajati WHERE departament='Resurse umane'); D. SELECT nume, prenume, salariu FROM angajati WHERE salariu = ALL (SELECT salariu FROM angajati WHERE departament='Resurse umane');
Answer
  • A
  • B
  • C
  • D

Question 27

Question
ACID inseamna: Alegeti un raspuns.
Answer
  • accesibilitate, izolare si dedublare
  • accesibilitate, identificare
  • atomicitate, credibilitate interes si durabilitate
  • atomicitate, consistenta, izolare si durabilitate

Question 28

Question
Fie urmatoarea expresie in algebra relationala: Lipsa poza Ea este adevarata: Alegeti un raspuns.
Answer
  • niciodata
  • daca "p" contine exclusiv atribute din lista A1...An
  • intotdeauna
  • daca "p" contine, printre altele, si atribute din lista A1...An

Question 29

Question
proprietatea de [blank_start]......................[blank_end] asigura ca odata ce o tranzactie afost validata, modificarile produse de aceasta nu vor fi pierdute nici incazul unui defect.
Answer
  • durabilitate

Question 30

Question
Care dintre urmatoarele conditii din clauza WHERE sunt corecte: Alegeti cel putin un raspuns.
Answer
  • WHERE comm IN (NULL)
  • WHERE comm=NULL
  • WHERE comm is NULL
  • WHERE NVL(comm,0)=0

Question 31

Question
In Oracle fisierele REDO LOG sunt componente ale schemei [blank_start].............[blank_end]
Answer
  • SYS

Question 32

Question
In cazul mecanismului de control al concurentei prin marci de timp, otranzactie poate accesa o unitate de acces: Alegeti un raspuns.
Answer
  • relatia intre marcile de timp nu afecteaza procesul de acces la date
  • daca marca sa de timp este mai mica decat marca de timp a unitatii de acces
  • daca si numai daca marca sa de timp este mai mare sau egala cu marca de timp a unitatii de acces

Question 33

Question
O interogare scalara intoarce: Alegeţi un răspuns.
Answer
  • exact valoarea unei coloane dintr-o inregistrare (A scalar query is a query that returns one row consisting of one column.)
  • exact o inregstrare
  • un mesaj de eroare

Question 34

Question
Fie urmatoarele tabele: CONTRACTE (codcli, tip_prestatie, cant, pr_unitar) FACTURI (numar, data, codcli, tip_prest, cant, valoare) si urmatoarea interogare SQL: SELECT c.codcli, f.numar, f.data, f.cant, f.tip_prest FROM contracte c, facturi f WHERE c.codcli=f.codcli and c.tip_prest=f.tip_prest and c.cant>f.cant Analizati interogarea si specificati, in limbaj natural, care este problema pe care o rezolva. Verificati daca interogarea este corect formulata si motivati raspunsul[blank_start].[blank_end]
Answer
  • tip_prest nu exista in CONTRACTE

Question 35

Question
Pentru campurile declarate NOT NULL este oportuna declararea de valori DEFAULT.
Answer
  • True
  • False

Question 36

Question
Operatorul UNION ALL face implicit ordonarea rezultatelor dupa valorile din prima coloana.
Answer
  • True
  • False

Question 37

Question
Fie urmatorul tabel: ANGAJATI (idang, nume, prenume, salariu, data_ang, functie, departament). Se doreste o lista a angajatilor al caror salariu este mai mic decat salariul tuturor angajatilor din departamentul Resurse umane. Care din urmatoarele variante de interogare sunt corecte? A. SELECT nume, prenume, salariu FROM angajati WHERE salariu >ALL (SELECT max(salariu) FROM angajati WHERE departament='Resurse umane'); B. SELECT nume, prenume, salariu FROM angajati WHERE salariu =ALL (SELECT salariu FROM angajati WHERE departament='Resurse umane'); C. SELECT nume, prenume, salariu FROM angajati WHERE salariu <ALL (SELECT salariu FROM angajati WHERE departament='Resurse umane'); D. SELECT nume, prenume, salariu FROM angajati WHERE salariu < ANY (SELECT salariu FROM angajati WHERE departament='Resurse umane');
Answer
  • A
  • B
  • C
  • D
  • toate variantele sunt echivalente

Question 38

Question
Oracle permite utilizarea unei subinterogari in clauza FROM.
Answer
  • True
  • False

Question 39

Question
Utilizarea unui ceas de garda este o metoda de prevenire a interblocarilor.
Answer
  • True
  • False

Question 40

Question
ce operator marcheaza faptul ca o operatie a fost anulata? Raspuns [blank_start]...........[blank_end]
Answer
  • Abort

Question 41

Question
algoritmul de blocare in doua faze asigura serializabilitatea dar nu asigura [blank_start]........................[blank_end]
Answer
  • recuperabilitatea

Question 42

Question
in care fisier se salveaza operatiile ce se efectueaza [blank_start]..............[blank_end]
Answer
  • jurnal

Question 43

Question
Intr-o ierarhie a tipurilor, subtipurile sunt legate de tipurile corespondente prin:
Answer
  • legaturi 1:N
  • legaturi 'isa'
  • Mostenire

Question 44

Question
Fie urmatorul tabel: ANGAJATI (idang, nume, prenume, salariu, data_ang, functie, departament) si interogarea: SELECT nume, prenume FROM angajati WHERE salariu = (SELECT min(salariu) FROM angajati GROUP BY departament) Executia interogarii intoarce o eroare. Carui fapt se datoreaza acest lucru?
Answer
  • Nu este permisa folosirea functiilor de agregare in subinterogare
  • subinterogarea intoarce valori multiple desi ar trebui sa fie o subinterogare scalar
  • Nu este corecta utilizarea opeeratorului "=", ar trebui folosit operatorul IN
  • clauza GROUP BY este interzisa in subinterogare

Question 45

Question
Fie urmatorul script: CREATE pers_t AS OBJECT ( cnp char(13), nume varchar2(20), localitate varchar2(20)); COMMIT; CREATE TABLE persoana of pers_t; Executia acestui script conduce la:
Answer
  • scriptul este incorect deoarece instructiunea COMMIT nu este permisa in SQL
  • crearea unui tip obiect care este apoi folosit pentru crearea tabelului 'persoana'
  • eroare Oracle

Question 46

Question
serializabiliatea:
Answer
  • este aceeasi cu planificare seriala
  • trebuie sa fie echivalenta cu cel putin o planificare seriala

Question 47

Question
legat de gradul de izolare:
Answer
  • un grad de izolare mic determina concurenta ridicata
  • un grad de izolare mare determina concurenta ridicata
  • ...

Question 48

Question
ce afiseaza select '15+7' from dual; Raspuns [blank_start].........[blank_end]
Answer
  • 15+7

Question 49

Question
actualizarea in dictionarul de date se face la operatiile: insert [blank_start].......... .........[blank_end] delete
Answer
  • alter create

Question 50

Question
Afirmatiiile advarate:
Answer
  • catalogul de date este un tabel despre baza de date
  • procesele background sunt optionale
  • serviciul listening este obligatoriu

Question 51

Question
care comanda se foloseste pentru a pastra duplicatele
Answer
  • union
  • union all

Question 52

Question
Daca se lucreaza cu primitive LOCK() si UNLOCK(), o unitate de acces:
Answer
  • poate fi blocata de mai multe tranzactii simultan
  • poate fi blocata la un moment dat de o singura tranzactie
  • poate fi deblocata de o alta tranzactie decat cea care a blocat-o

Question 53

Question
Proprietatea de [blank_start]................[blank_end] solicita ca toate operatiile continute intr-o tranzactie sa se execute complet, altfel tranzactia trebuie abandonata.
Answer
  • atomicitate

Question 54

Question
Indicati care sunt clasele de metode posibil de folosit pentru rezolvarea interblocarilor.
Answer
  • metode de prevenire a interblocarii
  • metode de evitare a interblocarii
  • metode de detectie si iesire din interblocare

Question 55

Question
Selectati raspunsul corect:
Answer
  • numai UPDATE poate fi restrânsă la anumite coloane ale tabelului
  • privilegiile INSERT si UPDATE pot fi restrânse numai la anumite coloane ale tabelului
  • INSERT si UPDATE nu pot fi restrânse la anumite coloane ale tabelului

Question 56

Question
Pe care din operatorii UNION si UNION ALL ii sugerati a fi folositi intr-o interogare pentru care doriti performante mai bune?
Answer
  • UNION
  • UNION ALL
  • nu are importanta alegerea, pentru ca ambii ofera aceleasi performante

Question 57

Question
Validarea unei tranzactii are rolul:
Answer
  • de a indica SGBD-ului momentul in care efectele sale sunt reflectate in baza de date
  • de a marca momentul de la care efectele sale nu mai pot fi anulate
  • de a face vizibile altor tranzactii modificarile produse de aceasta

Question 58

Question
Care dintre extensiile clauzei GROUY BY , care are ca parametri n campuri genereaza 2n combinatii de grupare? Raspund [blank_start].........[blank_end]
Answer
  • cube

Question 59

Question
Fie urmatoarea expresie in algebra relationala: Ea este adevarata:
Answer
  • daca "p" contine exclusiv atribute din lista A1...An
  • niciodata
  • daca "p" contine, printre altele, si atribute din lista A1...An
  • intotdeauna

Question 60

Question
O instanta Oracle consta in:
Answer
  • SGA, PGA si CKPT
  • SGA si procesele background
  • fisierul de control, SGA si procesele server
  • procesele background si fisierele de date

Question 61

Question
Intr-un mediu de baze de date termenii "conexiune" si "sesiune" sunt sinonimi.
Answer
  • True
  • False

Question 62

Question
Cine are dreptul de a acorda privilegii asupra unui obiect al bazei de date (ex. asupra unui tabel)
Answer
  • orice utilizator autorizat al bazei de date
  • administratorul bazei de date
  • proprietarul obiectului respectiv
  • administratorul de sistem

Question 63

Question
Urmatoarea interogare intoarce eroare: UPDATE employees SET salary = (SELECT salary FROM employees WHERE employee_id IN (100.101,102)) WHERE employee_id = 110;
Answer
  • True
  • False

Question 64

Question
Intr-o interogare SQL, clauza care ne permite sa specificam acele campuri care vor fi afisate in rezultat este[blank_start]...[blank_end]
Answer
  • select

Question 65

Question
In care din urmatoarele instructiuni SQL se foloseste o vedere in-line? A. SELECT a.last_name, a.salary, a.department_id, b.salavg FROM employees a, ( SELECT department_id, AVG(salary) salavg FROM employees GROUP BY department_id) b WHERE a.deparment_id = b. department_id AND a.salary >b.salavg; B. SELECT employee_id, last_name, (CASE WHEN department_id = (SELECT department_id FROM departments WHERE location_id =1800) THEN 'Canada' ELSE 'USA' END) location FROM employees; C. CREATE VIEW ang_80 AS SELECT * FROM employees WHERE department_id=80;
Answer
  • A
  • B
  • C

Question 66

Question
Completati urmatoarea interogare SQL: SELECT last_name, [blank_start]...................[blank_end] FROM employees; astfel incat sa afiseze comisionul primit de fiecare angajat, iar daca acesta nu primeste comision sa afiseze valoarea 0.
Answer
  • NVL(commission_pct,0)

Question 67

Question
Care sunt expresiile conditionale care se pot folosi in select? Raspuns: [blank_start].......[blank_end] [blank_start]........[blank_end]
Answer
  • case
  • decode

Question 68

Question
Care este tabelul din care se afiseaza data curenta? Raspuns: [blank_start].....[blank_end]
Answer
  • dual

Question 69

Question
Fie urmatoarea secventa de cod: set serveroutput on DECLARE nume_p VARCHAR2(15):='Mihai'; ddn date := '20-mar-1970'; BEGIN DECLARE nume_c VARCHAR2(15):='Irina'; ddn date :='01-mai-1994'; BEGIN DBMS_output.put_line('numele tatalui este: '|| nume_p); DBMS_output.put_line('data nasterii: '|| ddn); DBMS_output.put_line('numele copilului este: '|| nume_c); END; DBMS_output.put_line('data nasterii:'|| ddn); END; Care este rezultatul executiei sale?
Answer
  • . numele tatalui este: Mihai data nasterii: 01-05-1994 numele copilului este: Irina data nasterii: 20-03-1970
  • numele tatalui este: Mihai data nasterii: 20-03-1970 numele copilului este: Irina data nasterii: 01-05-1994
  • numele tatalui este: Mihai numele copilului este: Irina data nasterii: 20-03-1970 data nasterii: 01-05-1994

Question 70

Question
In care dintre urmatoarele elemente ale dictionarului de date puteti consulta codul corespunzator procedurilor sau functiilor stocate?
Answer
  • User_objects
  • user_procedures
  • user_subprograms
  • user_source

Question 71

Question
Care din urmatoarele declaratii in PL/SQL sunt incorecte: A. DECLARE nume, prenume VARCHAR2(20); B. DECLARE nota NUMBER(3,2); C. DECLARE data_angajarii BOOLEAN := SYSDATE;
Answer
  • toate variantele sunt corecte
  • toate variantele sunt incorecte
  • A
  • B
  • C

Question 72

Question
Care din urmatoarele elemente trebuie sa fie declarate atat in specificatia pachetului cat si in corpul acestuia?
Answer
  • procedurile, functiile si variabilele publice
  • variabilele booleene
  • procedurile si functiile private
  • toate variabilele folosite in pachet

Question 73

Question
Fie urmatorul script: CREATE pers_t AS OBJECT ( cnp char(13), nume varchar2(20), localitate varchar2(20)); COMMIT; CREATE TABLE persoana of pers_t; Executia acestui script conduce la:
Answer
  • scriptul este incorect deoarece instructiunea COMMIT nu este permisa in SQL
  • crearea unui tip obiect care este apoi folosit pentru crearea tabelului 'persoana'
  • eroare Oracle

Question 74

Question
10. Fie urmatorul tabel: ANGAJATI (idang, nume, prenume, salariu, data_ang, functie, departament) si interogarea: SELECT nume, prenume FROM angajati WHERE salariu = (SELECT salariu FROM angajati WHERE functie ='XX') In ipoteza ca functia "XX" nu exista, cate inregistrari vor fi intoarse ca rezultat al executiei interogarii?
Answer
  • NULL
  • 1
  • Executia intoarce un mesaj de eroare
  • 0

Question 75

Question
Diagrama din figura prezinta modul de desfaurare a unei serii de tranzactii într-un sistem. - t0 semnifica momentul initial - tc semnifica momentul cresterii unui punct de control - tp semnifica momentul aparitiei unei pene Care din urmatoarele seturi de actiuni sunt corecte pentru recuperarea bazei de date, la reluarea functionarii sistemului: A. T1 si T4 - REDO; T5 si T2 - UNDO; T6 si T4 - nimic B. T1 , T2 si T5 - REDO; T3, T4 si T6 - UNDO; C. T1 si T5 - REDO; T3 si T6 - UNDO; T2 si T4 - nimic Alegeti un raspuns.
Answer
  • A
  • B
  • C
  • toate variantele corecte

Question 76

Question
Care din cele 2 grafuri de asteptare de mai jos este asociat cu o interblocare?
Answer
  • graful din figura 2
  • graful din figura 1
  • niciunul din cele 2 grafuri
  • ambele grafuri

Question 77

Question
Care din urmatoarele declaratii SQL va autoriza utilizatorul ADRIAN sa creeze tabele in orice schema din baza de date?
Answer
  • GRANT CREATE ALL TABLE TO ADRIAN;
  • GRANT CREATE PUBLIC TABLE TO ADRIAN;
  • GRANT CREATE ANY TABLE TO ADRIAN;
  • GRANT CREATE TABLE TO ADRIAN WITH PUBLIC OPTION;

Question 78

Question
Unui rol:
Answer
  • i se pot acorda privilegii obiect
  • i se pot atribui alte roluri
  • i se pot acorda privilegii sistem
  • nu i se pot acorda nici un fel de privilegii

Question 79

Question
Operatiile in urma carora este necesara actualizarea statisticilor in dictionarul bazei de date sunt:
Answer
  • SELECT
  • statisticile nu se actualizeaza
  • UPDATE
  • INSERT

Question 80

Question
Singurele pericole la adresa securitatii unei baze de date sunt atacurile externe.
Answer
  • True
  • False

Question 81

Question
Care este cea mai mica unitate de stocare intr-o baza de date Oracle?
Answer
  • fisierul de date
  • extentul
  • blocul de date
  • segmentul de date

Question 82

Question
Indicati enunturile corecte:
Answer
  • Numai administratorul bazei de date poate avea privilegii complete pentru un tabel
  • Proprietarul unui tabel este utilizatorul care l-a creat
  • Când un utilizator creaza un tabel, el primeste privilegii complete pentru acest tabel.

Question 83

Question
Cu cat exista mai multi indecsi pe un tabel, cu atat performantele operatiilor DML sunt mai bune.
Answer
  • True
  • False
Show full summary Hide full summary

Similar

Germany 1918-45
paul giannini
Module C4: Chemical Patterns
remandsonic
CPU and Memory
LunaLovegood
BIOLOGY B1 1
x_clairey_x
Biology: Lung Disease
Sarah H-V
EEO Terms
Sandra Reed
AS Media Studies Terminology
Mourad
Digestive System Pre/Post Quiz
mkelemete
Maths: Formulas for Areas & Perimeters of Shapes
Annan S
1PR101 2.test - Část 7.
Nikola Truong
Final Exam
Ms. Wong-Lee