subiecte teorie examen

22

Click here to load reader

Upload: madalinaaadany

Post on 20-Oct-2015

31 views

Category:

Documents


2 download

DESCRIPTION

SUBIECTE TEORIE EXAMEN

TRANSCRIPT

Page 1: SUBIECTE TEORIE EXAMEN

SUBIECTE TEORIE EXAMEN

1. Ce este o baza de date?

O colectie de date structurale si obiecte asociate acestora ce ofera o organizare ce faciliteaza

extragerea de informatii si prelucrarea acestora.

2. Care sunt obiectele unei baze de date?

Obiectele sunt reprezentate in principal de tabele cu o structura riguroasa si restrictii ce definesc

corelarea datelor din tabele si intre tabele. Unele BD mai includ si obiecte asociate tabelelor, facilitand

operatiile de prelucrare a datelor din tabele.

3. Ce este un SGBD?

Este un mediu de dezvoltare (framework) care ofera un context eficient pentru memorarea si

extragerea de informatii din bazele de date. Un SGBD (Sistem pentru Gestiunea Bazelor de Date)

ascunde detaliile referitoare la memorarea si gestionarea datelor si asigura extragerea informatiilor in

mod eficient.

4. Care sunt nivelurile de abstractizare a datelor intr-un SGBD?

- nivelul fizic – descrie cum sunt memorate datele;

- nivelul conceptual – descrie in detaliu structurile de date low-level, printr-un numar mic de

structuri relative simple; ce date sunt memorate in BD; relatiile care exista intre ele;

- nivelul vizualizarilor – simplifica interactiunea cu utilizatorii care necesita doar o parte a

BD (intr-un sistem se pot furniza mai multe vizualizari pentru aceeasi BD.

5. Ce arhitectura au aplicatiile cu BD?

Arhitectura SGBD si a aplicatiilor cu BD este «client – server».

6. Ce functii de prelucrare a datelor sunt implementate in SGBD?

- definire a structurii ;

- manipulare informatii (extragere si prelucrare) ;

- control al datelor (tranzactii, gestiunea utilizatorilor).

7. Ce servicii de calitate sunt oferite de SGBD ?

- persistenta datelor ;

- integritatea datelor ;

- consistenta datelor ;

- acces concurent la date.

Page 2: SUBIECTE TEORIE EXAMEN

8. Ce instrumente de prelucrare sunt implementate in SGBD ?

- Procedurale – limbaje de programare procedurale care ofera support prelucrarilor

algoritmice ;

- Declarative – limbaje de programare neprocedurale ce ofera support interogarilor.

9. Ce reprezinta un model de date ?

O colectie de instrumente (tools) conceptuale pentru descrierea de :

- date ;

- relatii intre date ;

- semantici ale datelor  (semnificatii) ;

- restrictii asupra datelor (constrains).

Modelul de baza – Modelul relational al datelor.

10. Ce reprezinta Modelul Entitate – Relatie ?

Lumea reala este o colectie de entitati (obiecte de baza) si relatii (intre aceste obiecte de baza).

O entitate este un obiect care exista si este distinct de alte obiecte, distinct pentru ca este definit de

un set de atribute care descriu obiectul. – Un set de entitati este totalitatea entitatilor de acelasi tip.

O relatie este o asociere intre mai multe entitati (exp. Unui student i se asociaza toate notele pe

care le obtine intr-o sesiune). – Un set de relatii este totalitatea relatiilor de acelasi tip.

Modelul reprezinta si o serie de restrictii (chei) carora trebuie sa li se conformeze continutul. Sunt

folosite pentru a pastra calitatile de integritate a bazei de date.

Entitate = obiect care exista si este distinct de alte obiecte ;

Relatie = asociere intre mai multe entitati.

11. Ce reprezinta Modelul relational al datelor ?

Model elaborat de Edgar F. Codd in 1970. Modelul relational separa aspectele fizice de cele logice

ale bazei de date. Are la baza modelul conceptual Entitate – Relatie. Are la baza algebra relationala

care ofera urmatoarele instrumente :

- o colectie de obiecte cunoscute sub numele de relatii ;

- o multime de operatori ce actioneaza asupra relatiilor pentru a produce noi relatii.

Are la baza modelul conceptual Entitate-Relatie.

12. Care sunt operatorii relationali ?

- Restrictia, Proiectia, Produs, Join, Reuniunea, Intersectia, Diferenta

Page 3: SUBIECTE TEORIE EXAMEN

13. Ce reprezinta restrictia ?

Restrictia (selectia) este o operatie care preia si afiseaza datele din relatie. Este posibil sa se afiseze

toate randurile sau doar randurile care indeplinesc o conditie sau mai multe conditii. Aceasta este de

multe ori numita « submultime orizontala ».

14. Ce reprezinta proiectia ?

Proiectia este operatia care afiseaza anumite coloane din relatie si de aceea este numita

« submultime verticala ».

15. Ce reprezinta reuniunea ?

Reuniunea afiseaza toate randurile care apar in una, in cealalta sau in ambele din cele doua relatii.

16. Ce reprezinta Join ?

Join este rezultatul obtinut cand randurile a doua multimi de date sunt concatenate conform

conditiilor specificate.

17. Ce reprezinta intersectia

Intersectia afiseaza toate randurile care apar in ambele din cele doua relatii.

18. Ce sublimbaje sunt incluse in SQL ?

SQL (Structured Query Language) = limbaj de interogare declarativ pentru bazele de date standard

implementat de toate SGBD moderne.

Comenzile sunt grupate in urmatoarele limbaje :

- DML (Data Manipulation Language) – comenzi pentru introducerea, modificarea si

stergerea datelor din BD;

- DDL (Data Definition Language) – comenzi pentru crearea, modificarea structurilor de date

(tabele, relatii);

- DCL (Data Control Language) – comenzi pentru gestiunea operatiilor realizate si a

drepturilor de acces la date.

19. Care este sintaxa generala a comenzii SELECT ?

Comanda SELECT este utilizata pentru extragerea datelor din tabele.

“SELECT [DISTINCT] {*|lista_coloane} FROM tabel WHERE expresie_logica ORDER BY

lista_expresii; “

Page 4: SUBIECTE TEORIE EXAMEN

- *|lista_coloane* - specifica coloanele care se vor afisa (* = toate coloanele);

- FROM tabel – tabelul din care se extrag datele;

- WHERE expresie_logica – specifica conditia de filtrare a liniilor afisate (se vor afisa doar

liniile care respecta conditia);

- ORDER BY lista_expresii – specifica criteriile de ordonare la afisare ; prima expresie din

lista este criteriul principal – la valori egale pe acest criteriu se utilizeaza al doilea criteriu

din lista s.a.m.d. Pentru specificarea tipului de ordonare se utilizeaza ASC, DESC.

- DISTINCT – elimina liniile duplicat.

20. Ce reprezinta un ALIAS?

Alias-ul reprezinta un nume dat de alt utilizator cu care se afiseaza si se poate utiliza o coloana,

expresie sau tabel pentru comanda respectiva. Alias-ul se specifica cu clauza AS.

Exp. SELECT nume AS angajat, profesie FROM personal.

21. Ce este un limbaj neprocedural (declarativ)?

Sunt limbaje in care se specifica explicit « ce » se doreste si nu algoritmul de solutionare a

problemelor (deci « cum » se obtine solutia). Limbajul SQL (de exp) – este eficient daca organizarea

datelor este realizata dupa modelul relational.

22. Ce intelegem prin « structura » unui tabel ?

Tabelul este format din coloane sau atribute ce reprezinta caracteristicile entitatilor – fiecare atribut

ia valori intr-un domeniu de valori si linii care reprezinta o entitate sau un obiect. Coloanele sunt

caracterizate prin tipul de data ce specifica valorile care se pot introduce in tabel, latimea coloanei ce

reprezinta numarul de caractere care se pot introduce in coloana si restrictiile care se definesc pe

coloana respectiva referitoare la valorile care se introduc in coloana.

23. Ce reprezinta un tabel in SQL ?

Un tabel este o structura de baza de memorare si reprezinta un set de entitati de acelasi tip. Tabelul pastreaza toate datele setului de entitati. Este format din coloane si linii.

La baza limbajului sta algebra relationala. In modelul relational relatia reprezinta un tabel alcatuit din coloane si linii. O linie din tabel se numeste tupla, iar o coloana atribut.

24. Ce reprezinta o restrictie ?

Se defineste pe coloana si se refera la valorile care se introduc in coloana. Este o operatie care

preia si afiseaza datele din relatie. Este de multe ori numita « submultime orizontala ».

Page 5: SUBIECTE TEORIE EXAMEN

25. Ce reprezinta o linie intr-un tabel ?

O linie in tabel reprezinta o entitate sau obiect si este format din valorile coloanelor pe linia respectiva.

26. Ce este « cheia primara » ?

O cheie primara reprezinta coloana (atributul) sau combinatia de atribute care identifica in mod

unic o entitate (linie) in tabel. Se pot referi astfel entitatile prin valorile cheii primare.

27. Ce este un camp ?

Un camp specifica o valoare a unui atribut. Se afla, deci la intersectia dintre o coloana si o linie. Un

camp poate contine o valoare sau o valoare null (nicio valoare).

28. Ce reprezinta un tip de data ?

In toate mediile de programare exista o structurare a datelor in functie de reprezentarea lor in

memorie. O structura elementara (primitiva) reprezinta un tip de data. Tipul de date specifica domeniul

de valori pentru o coloana. Pentru fiecare tip de data exista definite valori constante care se pot utiliza

in constructia expresiilor.

Tipul de data este o structura elementara (primitiva) – specifica domeniul de valori pentru o

coloana.

29. Care sunt cele mai utilizate tipuri de date in SGBD-uri ?

In SGBD-uri tipurile de date se utilizeaza pentru a specifica coloane si constante. Cele mai utilizate

sunt :

- numeric   ;

- sir de caractere ;

- data calendaristica ;

- logic   ;

- valori speciale   : NULL (valoarea unui camp in care nu s-a introdus informatie)

Ele se asociaza coloanelor si pentru ele sunt definite constante, operatori si functii.

30. Operatorii asociati tipului « sir de caractere » ?

- & - concatenare siruri ;

- Like – comparatie cu un sablon ;

- In – comparatie cu elementele unei multimi.

31. Functii implementate pentru tipul numeric de date.

- Sqr(n) – radacina patrata din n;

Page 6: SUBIECTE TEORIE EXAMEN

- Int(n) – aproximare la intreg a lui n;

- Round(n,m) – rotunjire la m zecimale a numarului n ;

- Str(n) – conversie in sir de caractere ;

- Val(sir) – conversie in valoare numerica.

32. Operatorii asociati tipului numeric de date.

- Aritmetici : +,-,*,/,^ (ridicare la putere) ;

- De comparatie : =,< >, <, >, <=, >=, BETWEEN valoareInf AND valoareSup

In urma evaluarii rezulta o valoare logica (true sau false).

33. Functii implementate pentru tipul de date « sir de caractere ».

- Chr(n) – intoarce caracterul cu codul ASCII n ;

- ASC(str) – intoarce codul ASCII pentru str ;

- Left(str,n) – extrage subsirul st>ng din str cu lungimea de n ;

- Right(str, n) – extrage subsirul drept din str cu lungimea de n;

- Mid(str,n,m) – extrage subsirul din str ce incepe din pozitia n cu lungimea m;

- Ucase(str) – converteste in majuscule str;

- Trim(str) – extrage blancurile din marginile lui str;

- Len(str) – intoarce lungimea sirului str ;

- Space(n) – intoarce un sir cu n spatii ;

- InStr(str1, str2) – intoarce pozitia str2 in str1.

34. Operatorii asociati tipului de date « data calendaristica ».

- +, -, Between…AND…, LIKE

Aritmetici   : + sau – se utilizeaza pentru a aduna sau scadea zile dintr-o data calendaristica ;

Comparatie   : Between dataInf And dataSup pentru a verifica daca valoarea apartine intervalului

specificat; Like – comparative cu un sablon.

35. Functii implementate pentru tipul de date « data calendaristica ».

- Date() – intoarce data curenta a sistemului ;

- Day(d) – intoarce ziua, ca valoare numerica, pentru data (d) specificata ca argument ;

- Month(d) – intoarce luna, ca valoare numerica, pentru data (d) specificata ca argument;

- Year(d) – intoarce anul, ca valoare numerica, pentru data (d) specificata ca argument;

- Now() – intoarce ora curenta a sistemului;

- MonthName(d) – intoarce numele lunii, ca sir de caractere, pentru data (d) specificata ca

argument;

Page 7: SUBIECTE TEORIE EXAMEN

- DateAdd(interval,numar,d) – intoarce data corespunzatoare adaugarii numarului specificat

de intervale din argumentul functiei.

Unde: pentru interval se pot folosi urmatoarele sabloane pentru a specifica perioada:

“yyyy” – an;

“q” – sfert de an;

“m” – luna;

“y” – zi a anului;

“d” – zi;

“ww” – saptamana

Numar – numarul de perioade;

d – data calendaristica.

36. Operatorii asociati tipului logic de date.

- And – conjuctia logica;

- Or – disjunctia logica;

- Not – negatia logica;

- Is null;

- Is not null.

37. Tipul « NULL » de date.

Contanta: NULL

Operatori: IS NULL, IS NOT NULL

Functii: NZ(expr, val) – pentru valoarea NULL a expr intoarce valoarea val specificata.

Valorile NULL se pot introduce prin specificarea explicita, cu constanta NULL, sau implicit prin

omiterea unei valori a unei coloane.

38. Care sunt functiile pentru conversii intre tipurile de date.

CVDate(sir) – converteste in data calendaristica sirul dat ca argument ;

DateValue(d) – converteste in sir data calendaristica data ca argument ;

Val(string) – converteste sirul dat ca argument in valoare numerica ;

Str(number) – converteste in sir numarul specificat ca argument.

39. Ce cuprinde o expresie ?

Expresiile sunt construite din coloane, constante, functii si operatori.

Page 8: SUBIECTE TEORIE EXAMEN

40. Ce specifica clauza DISTINCT ?

Clauza DISTINCT – specificata pentru eliminarea liniilor duplicat la afisare.

41. Tipuri de JOIN.

JOIN – combina tuplele din doua relatii cu anumite conditii specificate. In functie de conditiile

specificate exista mai multe tipuri de JOIN :

- NATURAL JOIN – combina tuplele din doua relatii cu conditia ca atributele cu acelasi

nume din cele doua relatii sa aiba aceleasi valori ;

- EQUI-JOIN - …cu conditia ca atributele specificate din doua relatii sa aiba aceleasi valori ;

- THETA-JOIN - …cu conditia ca atributele specificate din cele doua relatii sa indeplineasca

o conditie ;

- SEMI-JOIN – selecteaza tuplele din prima relatie care sunt corelate cu cele din a doua

relatie dupa o conditie ;

- OUTER-JOIN – combina tuplele din doua relatii dupa o conditie specificata, afisand in

cazul in care intr-o relatie nu exista corespondent valorii NULL ;

- SELF-JOIN – combina tuplele din aceeasi relatie exprimate ca fiind din doua relatii dupa o

conditie specificata.

42. Ce operatie realizeaza SELF-JOIN ?

SELF-JOIN – combina tuplele din aceeasi relatie exprimate ca fiind din doua relatii dupa o

conditie specificata.

43. Ce operatie realizeaza EQUI-JOIN?

EQUI-JOIN – combina tuplele din doua relatii cu conditia ca atributele specificate din doua relatii

sa aiba aceleasi valori.

44. Ce operatie realizeaza THETA-JOIN?

THETA-JOIN – combina tuplele din doua relatii cu conditia ca atributele specificate din cele doua

relatii sa indeplineasca o conditie.

45. Ce operatie realizeaza OUTER-JOIN?

OUTER-JOIN – combina tuplele din doua relatii dupa o conditie specificata, afisand in cazul in

care intr-o relatie nu exista corespondent valorii NULL .

Page 9: SUBIECTE TEORIE EXAMEN

46. Ce operatie realizeaza operatorul UNION?

Implementeaza reuniunea a doua interogari compatibile. Sunt eliminate liniile duplicat. Operatorul

UNION ALL realizeaza reuniunea cu linii duplicat.

47. Cum se specifica o operatie de jonctiune in SQL?

Specificarea conditiei de jonctiune se realizeaza in clauza WHERE. Tabelele din care se extrag

datele sunt specificate in clauza FROM, iar denumirile de coloane pot fi prefixate de numele tabelului

astfel: tabel.coloana. In cazul in care denumirea de coloana este clara se poate specifica doar coloana

(adica se stie carui tabel apartine).

48. Cum se obtine un produs cartezian in SQL?

Produsul cartezian apare daca se specifica coloane din mai multe tabele si nu se specifica o

conditie de jonctiune intre tabele.

49. Cum se specifica o jonctiune echivalenta in SQL ?

In jonctiunile echivalente valorile dintr-o coloana a unui tabel sunt egale cu valorile unei coloane

din celalalt tabel. Se pot extrage date din cele doua tabele care verifica conditia si se pot adauga

conditii aditionale in clauza WHERE.

50. Operatorul INNER JOIN.

La Access exista implementat operatorul de jonctiune interna: INNER JOIN in clauza FROM

astfel: “FROM tabel1 INNER JOIN tabel2 ON tabel1.coloana1 operatorComparatie tabel2.coloana2”.

51. Cum se specifica o jonctiune ne-echivalenta in SQL?

In jonctiunile neechivalente valorile dintr-o coloana a unui tabel sunt intr-o altfel de relatie, decat

de egalitate, cu valorile unei coloane din celalalt tabel. Se pot extrage date din cele doua tabele care

verifica conditia specificata si se pot adauga conditii aditionale in clauza WHERE. Operatorul trebuie

sa fie un operator de comparative sau logic care are ca rezultat o valoarea logica (true sau false).

“SELECT [tabel1.]coloana, [tabel2.]coloana,…

FROM tabel1, tabel2,…

WHERE tabel1.coloana1 operator tabel2.coloana2”

52. Cum se specifica jonctiunile externe la Access? – OUTER-JOIN

Jonctiunile externe afiseaza si datele care nu au corespondent intr-o relatie, inlocuind absenta cu

valori NULL. La Access sunt implementati operatorii LEFT JOIN si RIGHT JOIN in clauza FROM,

specificand jonctiunea externa si partea deficitara de informatie astfel :

Page 10: SUBIECTE TEORIE EXAMEN

« FROM tabel1 LEFT JOIN tabel2 ON tabel1.coloana1 operatorComparatie tabel2.coloana2. »

- LEFT JOIN – afisarea informatiei din tabelul din stanga chiar daca in partea dreapta nu exista

informative asociata acesteia. In acest caz nu mai este necesara specificarea conditiei de

jonctiune in caluza WHERE.

53. Specificati analogiile pentru terminologiile SQL-modelul relational – MER.

Tabel = Entitate

Coloana = Atribut

Relatie = Relatie

54. Ce sunt functiile de grup ?

Functiile de grup opereaza mai multe linii intorcand un rezultat. Se poate specifica un criteriu de

grupare a datelor cu clauza GROUP BY, pentru ca functiile de grup sa intoarca un rezultat pentru

fiecare grup de linii. Din aceasta cauza, functiile de grup nu pot fi asociate in lista de coloane cu

coloane individuale. Coloanele au valori diferite pentru fiecare linie, iar functiile de grup se refera la

un grup de linii. Se poate utiliza, insa, in lista de coloane, criteriul de grupare deoarece liniile au

aceeasi valoare pentru acesta.

Functiile de grup ignora valorile NULL – exceptie face functia COUNT.

55. Care sunt functiile de grup ?

Functiile de grup mai utilizate sunt : AVG, MIN, MAX, COUNT, SUM.

- AVG(expr) – calculeaza valoarea medie a expresiei specificate ca argument, ignorand valorile

null ;

- COUNT(expr) – intoarce numarul de linii ce au valori diferite de null ale expresiei specificate

ca argument ;

- MAX(expr) – calculeaza valoarea maxima a expresiei specificate ca argument, ignorand

valorile NULL ;

- MIN(expr) – calculeaza valoarea minima a expresiei specificate ca argument, ignorand valorile

null ;

- SUM(n) – calculeaza suma valorilor expresiei specificate ca argument, ignorand valorile null.

56. La ce se foloseste clauza GROUP BY ?

Clauza GROUP BY este utilizata pentru a specifica un criteriu de grupare a liniilor – criteriu ce se

refera la valori egale pentru criteriul specificat pentru liniile din acelasi grup.

Page 11: SUBIECTE TEORIE EXAMEN

Criteriul se specifica printr-o lista de expresii care contin coloane. O expresie este o coloana sau o

expresie care contine coloane si operatori si functii asociate.

57. La ce se foloseste clauza HAVING ?

Filtrarea liniilor pentru functiile de grup se realizeaza cu clauza HAVING. Spre deosebire de

clauza WHERE sunt filtrate iesirile functiilor de grup. Intr-o comanda SELECT se pot utiliza ambele

clauze : WHERE filtreaza liniile inainte de aplicarea functiilor de grup, iar HAVING liniile rezultat.

58. Ce sunt subinterogarile ?

Subinterogarile sunt interogari incluse in alte interogari. Rezultatul subinterogarii, furnizat dinamic

la executie, este utilizat in interogare. Subinterogarea se numeste interogare interioara, iar interogarea

in care se utilizeaza interogarea exterioara.

Clauzele in care se pot utiliza subinterogari sunt : WHERE, HAVING, FROM.

59. Ce operatori de comparatie pentru multimi ?

IN, ANY(SOME), ALL

60. Cand se utilizeaza operatorul IN ?

Este utilizat pentru a compara un operand cu elemente unei multimi. Valoarea returnata este true

daca operandul este egal cu unul din elementele multimii – altfel false.

61. Cand se utilizeaza operatorul ANY?

Operatorul ANY compara un operand cu fiecare element al unei multimi. Astfel:

- <ANY – inseamna < maxim;

- ANY - … > minim;

- =ANY – inseamna IN.

62. Cand se utilizeaza operatorul ALL?

Operatorul ALL compara un operand cu toate elementele unei multimi. Astfel:

- <ALL – inseamna < maxim;

- >ALL – inseamna > maxim.

63. Cand se utilizeaza operatorul EXISTS?

Operatorul EXISTS testeaza existenta elementelor unei multimi si intoarce FALSE pentru o

multime vida si TRUE daca multimea are elemente.

Page 12: SUBIECTE TEORIE EXAMEN

64. Ce sunt subinterogarile corelate?

Subinterogarile correlate sunt subinterogari in care se utilizeaza valori obtinute din interogarea

externa.

65. Ce sunt tranzactiile?

Tranzactiile sunt operatii de modificare organizate in unitati logice. – din motive de consistenta a

datelor si de lucru in regim concurrent (arhitectura centralizata client-server).

66. Comanda SQL de adaugare linii in tabele.

Comanda INSERT:

INSERT INTO tabel [(coloana1, coloana2,...)]

VALUES (valoare1, valoare2,...)

67. Comanda SQL de modificare a datelor din tabele.

Modificarea datelor dintr-un tabel se face prin specificarea explicita a coloanelor si a valorilor

pentru coloana respectiva. In mod implicit se modifica valorile coloanei pentru toate liniile din tabel.

Restrictionarea (filtrarea) liniilor modificate se face cu clauza WHERE.

Sintaxa generala a comenzii de modificare este :

UPDATE tabel

SET coloana1=valoare1 [, coloana2=valoare2,...]

WHERE expresie_logica

68. Comanda SQL de stergere linii din tabele.

Stergerea liniilor se face cu comanda DELETE. Aceasta comanda actioneaza implicit pe toate

liniile tabelului specificat. Restrictionarea liniilor sterse se realizeaza cu clauza WHERE.

Sintaxa generala :

DELETE [FROM] tabel

[WHERE <expresie_logica>]

69. Comenzi SQL asociate tranzactiilor.

- COMMIT – executa atomic modificarile din tranzactie in baza de date;

- SAVEPOINT nume – marcheaza un punct de salvare in tranzactia curenta;

- ROLLBACK [TO SAVEPOINT nume] – sfarseste tranzactia curenta prin revenire in starea

initiala sau readuce tranzactia la punctul de salvare indicat.

Page 13: SUBIECTE TEORIE EXAMEN

70. Permanetizarea unei tranzactii.

Permanetizarea (modificarea datelor la server) unei tranzactii se realizeaza prin comanda explicita

de executie COMMIT. Starea BD la inceputul tranzactiei este sigura (stabila), iar sistemul poate fi

readus in respectiva stare pe parcursul unei tranzactii. Readucerea sa in starea respectiva se realizeaza

fie implicit de catre sistem in caz de eroare pe parcursul executiei tranzactiei, fie explicit de utilizator

printr-o comanda ROLLBACK.

Permanetizarea tranzactiei indica terminarea ireversibila a tranzactiei.

71. Care sunt obiectele unei baze de date ?

- tabele

- vederi (view) – tabele virtuale ce afiseaza anumite informatii din tabelele bazei de date;

- secvente – obiecte ce genereaza valori in secventa utilizate pentru cheile primare sau unice;

- proceduri stocate – cod program asociat datelor si stocat in baza de date;

- indecsi – structuri auxiliare utilizate pentru optimizarea operatiilor cu datele din baza de date.

72. Comanda SQL de creare a unui tabel ?

Un tabel se poate crea prin urmatoarele metode:

- O comanda explicita DDL de creare a unei noi structuri tabelare ;

- Utilizand o subinterogare.

Sintaxa comenzii de creare a unui tabel cu structura noua este:

“CREATE TABLE tabel (expresieColoana1, expresieColoana2, expresieColoana3,..., restrictii Tabel)”

73. Ce sunt restrictiile ?

Sunt constarngeri utilizate ptr pastrarea integritatii datelor introduse in tabele. Se defines la crearea

tabelelor.

74. Tipuri de restrictii.

Exista doua tipuri de restrictii din punct de vedere al localizarii :

- Definite la nivelul coloanelor ;

- Definite la nivelul tabelului.

Tipuri de restrictii din punct de vedere al localizarii   :

- NOT NULL – se aplica la nivel de coloana; specifica necesitatea unei valori pentru coloana

careia i s-a asociat ;

- UNIQUE KEY – specifica valori unice in coloana careia i s-a asociat (sunt admise valori

NULL) – specificarea restrictiei se face cu clauza UNIQUE;

Page 14: SUBIECTE TEORIE EXAMEN

- PRIMARY KEY – specifica cheia primara pentru tabelul respective cu valori unice in coloana

careia i s-a asociat. Nu sunt admise valori NULL – specificarea cu clauza PRIMARY KEY;

- FOREIGN KEY – specifca cheia straina;

- CHECK <conditie>- specifica o conditie care trebuie verificata de datele introduce in coloana

sau tabel – specificarea cu clauza CHECK<conditie>.

75. Ce este restrictia FOREIGN KEY si cum se specifica ?

Este o legatura cu o alta coloana cu valori unice (UNIQUE/PRIMARY KEY) impunand o

restrictie de integritate referentiala. Specificarea restrictiei se face cu clauza REFERENCES tabel

(expresieColoana)

76. Cum se creaza un tabel utilizand o subinterogare ?

77. Comenzi SQL de modificare a structurii tabelelor.

78. Ce este o vedere (VIEW) ?

79. Care este comanda SQL cu care se creaza o vedere?

80. Consideratii generale privind DCL.

- Accesul la BD se face autorizat ;

- Limbajul DCL cupinde comenzi ptr controlul accesului utilizatorilor la BD ;

- Utilizatorii BD au asociat un nume si o parola ;

- Utilizatorii pot fi: obisnuiti sau administrator.

Utilizatorilor li se asociaza derpturi (privilegii) – permisiuni de a realiza anumite operatii asupra

datelor. Privilegiile sunt organizate in grupuri de privilegii numite roluri. Utilizatorului I se pot aloca

privilegii distincte sau roluri (mai multe privilegii odata).

81. Comenzi DCL pentru securitatea sistemului.

- Comanda DCL ptr crearea unui utilizator: CREATE USER nume IDENTIFIED BY parola;

- Comanda de stergere a unui utilizator: DROP USER nume;

- Modificarea parolei unui utilizator: ALTER USER nume IDENTIFIED BY parola.

82. Ce reprezinta privilegiile (drepturile) si cum se aloca?

Utilizatorilor li se asociaza drepturi (privilegii). Privilegiile reprezinta permisiuni de a realiza

anumite operatii asupra datelor. Utilizatorului i se pot aloca privilegii distincte sau roluri (mai multe

privilegii odata).

Page 15: SUBIECTE TEORIE EXAMEN

83. Ce este un rol si care sunt comenzile SQL asociate acestuia ?

Privilegiile care sunt organizate in grupuri de privilegii sunt numite roluri.

CREATE ROLE nume_rol. Rolului i se asigura drepturi cu comanda GRANT

84. Privilegii pentru securitatea datelor.

Fiecare obiect al bazei de date are asociate privilegii care se pot acorda utilizatorilor. Acestea sunt :

- ALTER – drept de modificare;

- DELETE – stergere;

- REFERENCES – integritate;

- EXECUTE – executie;

- UPDATE – modificare;

- INSERT – introducere a noi linii in tabele.

85. Ce reprezinta un formular ? (Forms)

Reprezinta interfata principala intre utilizator si o aplicatie MS Acces, fiind obiecte ale BD ce

permit introducerea si afisarea datelor. Formularul contine obiectele de interactiune cu utilizatorul,

numite « controale ».

86. Ce reprezinta un raport ? Reprezinta formatul in care se afiseaza /tiparesc datele si

prelucrarile acestora. Ca si in cazul formularelor, exista definit un container si obiecte

(controale) care se pot utiliza pentru crearea rapoartelor.