Sei sulla pagina 1di 54

li

r
r
1

-\,.-
n VFP: sunt puine instrumente oferite administratorului BD fa de ceea ce
ar trebui s ofere un SGBD. Astfel, exist asistenii Database Designer i
Table Designer care ofer elemente de proiectare asistat; se poate lucra
Note bibliografice
Noiunea de sistem de baz de date (SBD) este tratat att n materialele llldl
vechi (n ara noastr sub denumirea de banc de date) ct i n cele mai noi.
Conceptul este prezentat fie doar n contextul elementelor sale componente
opional cu noiunea explicit de baz de date i deci cu dicionarul BD prin
[CONNOO], [DATE04], fie ca noiune i apoi pe componente [VELU03).
comanda .CREA TE DAT ABASE, care produce fiierul tip DBC
SBD avansate sunt prezentate pe larg, teoretic (concepte, arhitecturi,
.._ corespunztor dicionarului BD; exist cteva comenzi SET pentru
interaciuni) i practic (exemple, studii <le caz, aplicaii), n mai multe
schimbarea unor parametri. Toate acestea nu sunt ns doar la dispoziia
lucrri: [RICCOl], [RAGEOOJ, [DIAZOOJ. Am prezentat aici, doar o sintez
adminsitratorului BD ci le poate folosi orice utilizator.
a principalelor tipuri de SBD avansate, i anume cele mai utilizate n acest
_.;
Rezumat moment.
Definirea unui sistem de baz de date (SBD) se face n strns legtur cu Pentru o bun documentare n ceea ce privete actvitatea de administrare a
noiunea de aplicaie inf01matic. unei baze de date, cititorul poate consulta [LUVE021.
Sistemul de baz de date (DataBase System) este un ansamblu de elemente
intercondiionate care contribuie la realizarea i exploatarea unei aplicaii cu
baze de date. Elementele care fac parte din acest ansamblu se refer la date, Cuvinte-cheie
software i alte resurse necesare. banc de date
sistem de baz de date- SBD
Dou arhitecturi de SBD au fost prezentate: pe componente i pe niveluri.
sistem de gestiune a bazelor de date -
baz de date - BD
Arhitectura pe componente a SBD evideniaz elementele sale: datele, SGBD
....... arhitectura de SBD
software, elementele auxiliare. aplicatie informatic
niveluri de organizare a datelor nivel conceptual
Arhitectura pe niveluri a SBD arat modul de structurare a datelor, rolul
nivel fizic ..
nivel logic
l_. SGBD-ului i legturile ntre diversele elemente. Sunt trei niveluri de administrator'baze d~ date
organizare a datelor n baze de date: conceptual, logic, fizic. Fiecrui nivel i SBD avansate
corespunde, respectiv, un punct de vedere: administratorul BD,
programatorul de aplicaie, analistul de sistem. Fiecare dintre acetia Teste-gril
realizeaz schemele bazei de date: conceptual, logic (extern), fizic
(intern). 1. Pentru o baz de date:
a) structura conceptual se deduce din cea logic
SBD evolueaz continuu, ponderea majoritar fiind deinut de cele
~..,.

b) structura extern se deduce din cea conceptual


relaionale. Noi tipuri de SBD (avansate) au aprut prin interferena
c) structura global se deduce din cea conceptual
tehnologiei bazelor de date cu alte tehnologii infonnatice: paralele,
1.... d) structura global se deduce din cea fizic
multimedia, mobile, sisteme suport de decizie, Internet, spaiale.
e) structura intern se deduce din cea fizic
Pe scurt, este prezentat activitatea de administrare a unei baze de date,
punctndu-se: ce este un administrator, care sunt nivelurile de
\".....
administratori, care sunt sarcinile administratorului BD, precum i
instrumentele necesare a fi la dispoziia sa pentru a ndeplini aceste sarcini.

~ 27
26
2. Componenta de date dintr-un SBD poate conine: 7. ntr-o arhitectur de sistem de baz de date, Visual Foxpro face parte din
a) sistemul de operare componenta: :-)

b) sistemul de coduri a) date


c) dicionarul distribuit b) elemente auxiliare
c) elemente obligatorii
,.....
d) fiierele anexe
e) fiiere tip DOC d) software
e) baza de date
-.
3. n arhitectura unui SBD pe niveluri, viziunea programatorului de 8. Componentele unui sistem de baz de date (banca de date) sunt:
aplicatie corespunde: a) sistemul de operare
a) nivelului fizic b) software-ul de reea ......
b) nivelului sistem de operare c) reteaua de calculatoare
c:) nivelului SGBD d) modelul de calcul
d) nivelului fizic: i logic e) programele utilitare ,......
e) nivelului logic: 9. Arhitectura pe componente a unui sistem de baz de date conine:
a) fiierele
4. Yisual Foxpro este:
b) programele de comunicaie
a) un limbaj de programare universal c) software-ul specializat de comunicaie
b) o baz de date d) datele
c:)
d)
e)
un sistem de fiiere
un SGBD reea
un SGBD orientat vizualizat
e) elementele auxiliare

10. Pe cte niveluri de organizare poate fi structurat .9 baz de date ? :


-
5. Pentru o
a)
baz de date:
structura extern se deduce din cea global
a) dou
b)
c)
trei
patru
-~' . ..
-
d) unul
b) structura logic se deduce din cea conceptual ....,
e) uneori pe trei, alteori pe patru
c:) structura global se deduce din cea extern
d) structura intern se deduce din cea logic Il. n arhitectura pe niveluri a unui sistem de baz de date, punctul de
e) structura extern se deduce din cea intern vedere al administratorului corespunde:
a) nivelului logic
6. Structura intern (fizic) a unei baze de date este punctul de vedere al: b) nivelului fizic i logic
a) programatorului de aplicaie c) nivelului conceptual ,....,
b) administratorului de reea d) nivelului aplicaie
c:) administratorului bazei de date e) nici unui nivel
d) efului echipei de lucru ........,_
e) nu exist o astfel de structur de date

28 29 ,...-,
1ihl' 12. Structura extern a unei baze de date este de competenta (punctul de
vedere): Rspunsuri la teste
1 - b ; 2 - d ; 3- e ; 4- X ; 5- a, b, d ; 6- X ; 7 - d ; 8 -X ; 9 - d,
a) programatorului de aplicaie
e ; 10-b ;
\_, b) nu exist o astfel de structur de date
11-c; 12-a; 13-b;14-b,c,d,e;15-c,d,e;16-x
c) administratorului bazei de date
d) administratorului de reea
e) SGBD-ului
Probleme
13. Componenta de date dintr-un SBD poate conine:
1
L._, a) programele de aplicaie J) Din activitatea de cercetare-dezvoltare a unei firme s se identifice o
b) dicionarul BD subactivitate pentru care se poate construi un SBD n VFP.
c) programele utilizator 2) Din activitatea de producie a unei firme s se identifice o
i.... d) dicionarul de programe subactivitatc pentru care se poate construi un SBD n VFP.
e) fiiere tip HTML 3) Din activitatea financiar-contabil u unei firme s se idenrificc o
subactivitate pentru care se poate construi un SBD n VFP.
L 14. Sarcini ale administratorului BD sunt:
a) asigur independena conceptual a datelor
4) Din activitatea comercial a unei firme s se identifice o
subactivitate pentru care se poate construi un SBD n VFP.
b) definete dicionarul BD 5) Din activitatea de resurse umane a unei firme s se identifice o
1...,.. c) monitorizeaz accesul la date subactivitate pentru care se poate construi un SBD n VFP.
d) asigur protecia datelor 6) S se identifice n VFP componentele care asigur functiile unui
e) ntreine BD
SGBD.
.-'
1.......
15. Instrumente la dispoziia administratorului BD sunt:
a) produse hardware oferite de SGBD
b) produse hardware din sistemul de operare
c) produse software oferite de SGBD
d) produse software oferite de sistemul de operare
'- e) produse software realizate de administratorul BD

16. runciile unui SGBD sunt:


a) manipularea programelor
'-
b) administrarea reelei
c) descrierea interfeelor
~
d) definirea utilizatorilor
e) utilizarea limbajelor universale , _"~~~-.;,:!~~.:;.~'
t; ,.,. '\t~

~ 30
{ ,' ;,,::;;;',; :,',':;' 1" ,~J
.:~. "..;"
..... 3J
'-;~~--~- ..:: .. :./
~1 i1
'~l

2 Introducere n baze de date (BD)


~

.-.

2.1 Definirea bazei de date


Capitolu12 ~

n orice calculator datele sunt stocate att n memoria in tem (temporar) ct


i n memoria extern (persistent).
Bazele de date - BD, ca mod de organizare a datelor n memoria extern, au
evoluat din fiiere printr-un proces de integrare a lor (fiierele i legturile
dintre ele) i innd cont de cerinele aplicaiilor informatice.
-
l'"j
2.1. Definirea BD Elementele componente ale unei baze de date
Deoarece bazele de date au evoluat din fiiere, o serie de noiuni utilizate n
2.2. Aspecte privind organizarea datelor n memoria extern
cele dou moduri de organizare a datelor n memoria extern sunt similare,
2.2.1. Evoluia organizrii datelor '1
aa cum reiese din tabelul de mai jos. De remarcat faptul c att fiierele ct
2.2.2. Organizarea datelor n fiiere i bazele de date se construiesc pornind de la lumea real nconjurtoare .
2.3. Modelele logice de structurare a datelor n baze de date Citirea tabelului se va face de la stnga la dreapta. iar noiunile
2.4. Consideraii privind protecia bazelor de date corespunztoare de pe cele dou rnduri pot fi considerate similare.
~

Rezumat Astfel vom spune: o baz de date este fmmat din mai multe colecii de
Note bibliografice date. Fiecare dintre acestea are ataat o famili~.de caracteristici, care. ese
Cuvinte-cheie format din mai multe caracteristici, care iau valori dintr-un domeniu de .....
Teste-gril i probleme valori.
n mod similar se citete rndul de jos: un sistem de fiiere este foqnat din
mai multe fiiere. Fiecare dintre acestea are ataat o nregistrare logic -
articol, care este format din mai multe cmpuri, care iau valori.

Baza de date lecii de date aracteristici Domenii de valori


aracteristici '
Sistem de fisiere Valori

Ne vom ocupa, n continuare, de noiunile aferente bazelor de date, urmnd ,_


ca de fiiere s ne ocupm n paragraful urmtor.
Domeniul de valori este dat de mulimea valorilor posibile pentru o
caracteristic (exemplu: culorile posibile pentru un automobil). ~

33
,.....,
~ -1
r1 '
L-' Ca orice SGBD relaional, VFP este un sistem tranzacional, dar nu sunt Rezumat
respectate toate caracteristicile tranzaciilor.
Salvarea i restaurarea BD nu este fcut automat ci doar explicit de ctre Capitolul ncepe cu definirea conceptului de BD i a noiunilor aferente.
L.. administratorul BD. Pentru noiunea de BD este dat o definire original, complet: un ansamblu
de colecii de date n memoria extern cu urmtoarele caracteristici:
SECURITATEA datelor este asigurat prin msurile care se iau de ctre organizat, pe trei niveluri - conceptual, logic, fizic;
proiectantul BD, dar i de ctre benefidar, pentru protejarea datelor stocare structurat, conform unui model de date pentru 130 - ierarhic, reea,
mpotriva unor incidente - evenimente voite, dar i a unor accidente - relaional, orientat obiect;
evenimente nevoite.
coerent, prin restriciile de integritate i protecia datelor;
1. Autorizarea i controlul accesului la date const n identificarea
1...... cu o redundan minim i controlat, prin implementarea unui model
utilizatorilor i restricionarea accesului acestora, pentru diferite de date i prin aplicarea unei tehnici de proiectare;
1 operaii de prelucrare.
1 accesibil mai multor utilizatori n timp util, adic informaiile din BD
L- 2. Viziunile/vederile/tabele virtuale- views- sunt partiii logice ale BD pol fi folosite de ctre mai muli utilizatori atunci cnd e nevoie de
definite pentru diferii utilizatori.
, acestea.
3. Procedurile .1peciale sunt rutine, oferite de SGBD, care efectueaz
1 Se d un exemplu de BD relaional pe care se exemplific definiia noiunii
~ anumite operaii asupra datelor i care sunt accesibile anumitori deBD.
utilizatori.
, Dup ce s-a definit noiunea de organizare a datelor, s-a prezentat evoluia
4. Criptarea este operaia de codificare a datelor n vederea stocrii sau
acesteia pentru memoria extern, pornind de la fiiere - primul mod de
"- transmiterii datelor. n acest sena, se folosesc o mulime de tehnici organizare a datelor n memoria extern i ajungndu-se la ultimele tipuri de
specifice: parole, algoritmi de criptare/decriptare, rutine speciale etc. baze de date, cele orientate obiect. In aceast evoluie, s-au urmrit cleva
n VFP. Se poate lucra cu tabele libere- free table (rezult fiiere tip DBF), aspecte - caracteristici comparative: structura de datt;,.- mod':!l de prelucrare a
"'-' caz n care securitatea datelor este sczut. Se poate lucra i cu noiunea de datelor, redundana datelor, software-ul utilizat. -"
baz de date prin comanda CREATE DATABASE (rezult fiier tip DBC), Pentru a se fundamenta necesitatea organizrii datelor in memoria extern,
caz n care securitatea datelor crete.
1....
comparativ cu memoria intern, s-a prezentat un tabel n care se gsesc cinci
Se poate lucra cu viziuni prin comanda SQL CREATE VIEW, dar nu sunt criterii: cost, vitez, capacitate, persisten, organizare.
ndeplinite toate caracteristicile acestora.
n continuare, se definete noiunea de fiier i, acesteia, i se prezint cteva
Pentru administratorul BD VFP ofer puine instrumente pentru ntreinerea
..... dintre cele mai importante aspecte de organizare a datelor: operaii,
BD. Majoritatea operaiilor administratorul BD le va efectua prin proceduri structura, modul de organizare, modul de acces.
proprii.
O parte consistent din capitol este destinat organizrii datelor n baze de
Criptarea nu este asigurat automat de VFP.
\"_. date conform unor modele de date.
Mai nti sunt prezentate principalei noiuni necesare: informaia, modelul
de structur, modelul de date, tipuri de modele de date, schema conceptual,
........ elementele componente ale unui model logic de date (definirea structurii,
operatorii, regulile de integritate).

1.-o
66
67
,_,

tipuri de modele de date schema conceptual


Dup aceea, sunt prezentate cele patru modele logice de date
structura modelului de date operatorii modelului de date
fundamentale/de baz, ntlnite la organizarea datelor n baze de date: ""'"'
regulile de integritate model ierarhic
ierarhic, reea, relaional, orientat obiect. Fiecare model este prezentat n model relaional
model reea
acelai mod: elementele componente, carac:terizare general. n acest fel se protecia bazei de date
model orientat obiect ......,
pot urmri, comparativ, cum se regsesc noiunile prezentate la nceputul securitatea datelor integritatea datelor
capitolului: n fiecare model n parte.
Capitolul se ncheie cu o sintez privind protecia bazelor de date. Sunt
luate n considerare cele dou aspecte ale protec1ici: securitatea, integritatea.
Fiecare dintre acestea este descompus n principalele subactiviti care
Teste-gril

1. Dup modelul de date implementat, bazele de date sunt:


-
trebuie s fie asigurate ntr-un sistem de baz de date, de ctre SGBD i a) ierarhice, locale
b) distribuite, generalizate
,..,
administratorul bazei de date.
c) relaionale, de conducere
La fiecare paragraf au fost prezentate soluii de implementare n VFP,
d) orientate obiect, specializate
precum i n nucleul extins de SQL.
e) reea, de documentare r-1

Note bibliografice 2. Modul de organizare clasic 1 elementar al fiierelor cuprinde tipurile:


a) organizarea partiionat
r'l
Aspecte suplimentare despre organizarea datelor n baze de date se gsesc n b) organizarea secvenial
[DATE04], [RICCO 1) i (CONNOO]. c) organizarea standard
Referitor la tipurile de modele de date pentru baze de date, se face o bun
prezentare n [RAGEOO] .
d) organizarea indexat-secvenial
e) organizarea relativ ...
Protectia bazelor de date este tratat n majoritatea lucrrilor, sub diferite 3. n modelul relaional pentru baze de date: __
aspecte. Exemple de implementare n SGBD relaional a aspectelor privind a) definirea legturilor se face logic prin atribute declarate chei -,
securitatea i integritatea datelor se gsesc n [VELU02] i [VELUOO]. b) domeniul este linia dintr-o tabel i nu are nume
Conceptele fundamentale utilizate n acest capitol se regsesc n [VELI05] c) conectivele sunt operatori orientai pe tuplu din calculul relaional
i parial n [DATE06] . d) exist restricia referenial .-,
e) se face trecerea la a treia generaie de baze de date

Cuvinte-cheie 4. La organizarea datelor n memoria extern , noiuni corespunztoare r-,


sunt:
baza de date domeniu de valori a) cmp - valoare
caracteristica colecia de date b) caracteristic- cmp
organizarea datelor structura de date c) caracteristic- nregistrare
redundana memoria extern d) cmp- nregistrare
fiier mod de organizare a unui fiier e) colecia de date- fiier ,.....,
mod de acces la un fiier model de date

69
68
,__

l
L 5. n modelul ierarhic pentru baze de date: 1O. n modelul retea pentnl baze de date:
a) exist operatorul de trecere de la o nregistrare la alta ntr-o tabel a) definirea obiectelor se face prin tip arbore
b) exist operatorul de adunare
b) un nod poate avea orici superiori
c) exist noiunea de tip arbore
c) un nod poate avea orici subordonai
d) exist noiunea de domeniu de stri
d) exist noiunea de tip set
e) un nod copil poate avea mai muli prini e) se pot reprezenta numai legturi l:M
1....
6. Baza de date este un ansamblu de date: 11. Visual Foxpro este:
a) organizat, structurat a) un limbaj de programare universal
b) cu o redundan minim i necontrolat b) o baz de date
L. c) accesibil mai multor utilizatori n timp util c) un sistem de fiiere
d) coerent, modular
d) un SGBD reea
e) distribuit uniform
e) un SGBD orientat vizualizat
L.
7. La evoluia organizrii datelor n memoria extern se au n vedere 12. n modelul relaional pentru baze de date:
aspectele:
a) exist noiunea de tip nregistrare
a) modul de organizare a aplicatiei b) atributele care au rol n realizarea legturilor ntre tabele se numesc
!.....
b) structurile de program
chei compuse
c) procedurile de calcul
c) legturile ntre tabele se descriu n LMD
d) transmisia datelor d) exist noiunea de schema tabelei
!.....
e) redundana programelor
e) proiectia, negaia i existena sunt operatori din algebra relational
8. Componenta de date dintr-un SBD poate conine: 13. n modelul reea pentru baze de date:
a) sistemul de operare
~
a) exist noiunile de nod proprietar i nod membrti
b) sistemul de coduri
b) exist operatori de actualizare ntr-un set
c) dicionarul distribuit
c) exist operatorul de localizare a unui arbore
d) fiierele anexe
L... d) o nregistrare nu poate fi membr a dou realizri ale aceluiai tip set
e) fiiere tip DOC
e) actualizarea datelor este greoaie
9. Ansamblul de concepte i instrumente pentru a realiza schema 14. Modul de dispunere a nregistrrilor, conform unor reguli, reprezint
L conceptual a datelor reprezint:
pentru un fiier:
a) structura de date fizice
a) modul de acces
b) structura programelor
b) modul de regsire
._ c) SGBD
c) modul de organizare
d) modelul fizic
d) modul de calcul
e) modelul de date
e) modul de programare
.....

70
71
,...,
15. n modelul ierarhic pentru baze de date:
20. La organizarea datelor n fiiere se au n vedere urmtoarele
a) definirea obiectelor se face prin clase de obiecte caracteristici: ...,
b) se admit legturi 1:1, I:M, M:N a) limbajul de programare
c) exist secven{e ierarhice de realizri b) actualizarea datelor
d) exist operatorul de actualizare ntr-un arbore c) tipul i frecvena operaiilor pe nregistrri ...,
t:) o realizare copil este ntotdeauna asociat unei singure realizri d) volumul de date
printe
e) dimensiunea hard discului
...,
16. Visual Foxpro con{ine: 21. La organizarea datelor n memoria extern, noiuni corespunztoare
a) un limbaj procedural sunt:
b) un limbaj descriptiv a) fiier - familia de caracteristici ...,
c) un limbaj de descriere a datelor b) fiier- valoare
d) un limbaj de manipulare a datelor c) nregistrare- caracteristic
c) un limbaj utilizator distribuit d) nregistrare- domeniu de valori
e) cmp- colecie de date
...,
17. n modelul orientat obiect pentru baze de date:
a) obiectul are identificator, proprieti
22. Modelul de date pentru baze de date este un ansamblu format din:
b) obiectul are interfa, implementare
a) concepte
...,
c) exist caracteristicile fundamentale ale obiectelor: succesiunea i
ncapsularea b) structura de program
c) structura de date
d) exist restri cia de integritate: orice clas respect regulile impuse
obiectului din care face parte d) schema intern
e) structura funcional
c) Ia baza operaiilor (operatorilor) stau metodele ..
~

- ...,
18. La organizarea datelor n fiiere, nivelurile de referin sunt: 23. n modelul relaional pentru baze de date:
a) global a) reuniunea i proiecia sunt operatori din calculul relaional
b) conceptual b) ntr-o tabel nu trebuie s existe dou tupluri cu aceeai valo<re
c) logic pentru ansamblul cheie compus
d) de ansamblu c) cheia format din mai multe atribute se numete cheie primar l
c) fizic d) implementarea modelului se face la nivel logic
e) definirea datelor se face prin tablouri bidimensionale numite relaii
19. n modelul reea pentru baze de date:
a) exist un singur tip nregistrare rdcin 24. Baza de date este un ansamblu de date:
b) la un subordonat se poate ajunge pe mai multe ci a) condus, coerent ,._
c) exist operatori de localizare a unei nregistrri pe baza valorii unui b) accesibil mai multor utilizatori n timp util
cmp
c) structurat, cu o redundan minim i controlat
d) o nregistrare poate s aparin mai multor tipuri set d) organizat, coerent
c) implementarea modelului se face logic ,._
e) administrat, programat

72
73 ...,
'-

l!'
25. Structura unui fiier oarecare este dat de componentele sale:
a) partea de program
30. Elementele definitorii ale unei baze de date sunt:
a) caracteristica
r...... b) partea de identificare
c) partea cu structura fiierului index
b) coleclia de caracteristici de grup
c) colecfia de date
d) partea de date d) familia de caracteristici
~ e) partea de comunicaie e) colecfia de baze de date
r
'
.....
26. Modul/ metoda de acces la un fiier poate ti: 31. Elementele 1 componentele oricrui model de date pentru baze de date
a) indexat-secvenial sunt:
b) nedefinit a) definirea entiti lor 1 obiectelor
L-
c) dinamic b) operatorii care acioneaz asupra structurii de date
d) structurat c) operatorii aritmerici
e) standard d) definirea legturilor dintre entiti 1 asocierile
L-
e) regulile lui Codd
27. Elementele /componentele oricrui model de date pentm baze de date
" sunt:
1 modelul relaional pentru baze de date:
32. n
~"_.,
a) regulile de integritate a)definirea obiectelor se face prin tip nregistrare
b) regulile de comportament b)tuplul este coloana dintr-o tabel i are un nume
c) regulile de comunicaie c)domeniul este un subansamblu al produsului cartezian al mai multor
d) definirea procedurilor de calcul tabele
"'"" e) definirea obiectelor 1 entitilor d) potenial, orice tabel se poate lega cu orice tabel
e) cuantificatorii sunt operatori orientai pe do!Jleniu, din calculul
L- 28. Dup modelul de date implementat, bazele de date sunt: relaional _./ .
a) generalizate
b) specializate 33. n Visual Foxpro se poate lucra- ca stil de lucru:
c) statistice a) prin meniul utilizator final
L-
d) de gestiune b) prin comenzi
e) de conducere c) prin program
L-;
d) prin generatoarele de date
29. n modelul ierarhic pentru baze de date: e) prin date
a) orice acces la un nod se poate face pe mai multe ci
b) un nod printe poate avea mai multe noduri copil 34. n modelul orientat obiect pentru baze de date:
L.,. c) legtura printe- copil poate fi 1:1, 1:M a) comportamentul obiectului se indic prin metode
d) numrul de ierarhii posibile crete combinatorial cu numrul b) mesajele sunt cereri de regsire
nregistrri lor c) un obiect nu i poate deriva datele i funcionalitatea din alt obiect
w e) exist operatorul de localizare a unui arbore d) proprietile obiectelor pot fi actualizate
e) sunt patru caracteristici fundamentale (de baz) ale obiectelor

l...;
74 75
~

35 . n modelul orientat obiect pentru baze de date: 40. n modelul ierarhic pentru baze de date:
a) exist restricia de integritate: accesul la obiecte nu este limitat a) implementarea modelului se face fizic l
b) exist restricti a de integritate: identificatorul obiectului asigur b) implementarea modelului se face logic
integritatea referirii Ia acesta
c) exist operatorul privind actualizarea proprietilor
d) exist operaton1l privind actualizarea claselor
c) dac un tip de nregistrare nu are realizri atunci nici tipurile de
nregistrare descendente nu au realizri
d) exist operatorul de localizare a unui arbore
-
e) diferite obiecte pot rspunde diferit la aceleai mesaje
e) exist operatorul de localizare a bazei de date
"""'
36. Partea de manipulare a unui model de date pentru baze de date este dat
de: 41. Elemente definitorii ale unei baze de date sunt:
a) definirea entiti lor a) colecia de proprieti ~

b) definirea legturilor b) colecia de date


c) definirea atributelor c) familia de caracteristici
d) regulile de integritate d) familia de nregistrri ...,
e) regulile de derivare e) caracteristica ,
37 . n modelul orientat obiect pentru baze de date:
42. La evoluia organizrii datelor n memoria extern se au n vedere ...,
a) conceptul de baz folosit este clasa de tupluri
aspectele:
b) obiectul are nume i interfa
c) obiectul are nume i mesaj a) modul de organizare a datelor
d) exist operatorul privind identificatorul obiectului b) nivelurile de structurare a datelor
e) exist caracteristicile obiectelor: mesajul, polimorfismul c) modul de prelucrare a datelor
-- , . -.
J
d) redundana programelor
38. n modelul relaional pentru baze de date:
,....,
e) software-ul aferent
a) legturile ntre tabele se descriu n LDD
b)
c)
d)
e)
operatorii relaionali sunt implementai n LDD
exist restricia tip set
exist operatorul de localizare a unei nregistrri
exist valoarea NULL
43. n modelul relaional pentru baze de date:
a) exist restricia entitii
b) exist noiunea de cheie intern
-
c) exist noiunea de cheie extern
.....
39. La organizarea datelor n fiiere, nivelurile de referin sunt: d) T(al :D l, ... , an:Dn), unde T - tabel, ai - atribut, Di - domeniu,
a) conceptual este schema relaional
b) programator e) ordinea liniilor i coloanelor dintr-o tabel are o mare importan ...,
c) global pentru creare
d) de reea
c) de ansamblu
"""1

76 77 ~
~

r
1
1....1 44. Protecia BD, sub aspectul securitii datelor, se refer la: Probleme
a) criptarea
b) controlul concurenei 1) S se descrie, pe scmt, o activitate dintr-o firm pentru care se poate
c) viziunile realiza un SBD n VFP. Din descriere sa se construiasc schema

,. d) co~trolul cheilor conceptual a BD.


e) salvarea 2) S se creeze n VFP o baz de date i n cadrul ei tabelele conform
1....1 schemei conceptuale de la problema l ). Se va da o soluie n VFP i
45. Protecia BD, sub aspectul integritii datelor, se refer la: apoi n SQL.
a) viziunea administratorului de reea 3) S se identifice n VFP elementele din definiia unei BD.
b) procedurile manuale 4) S se identifice i s se utilizeze n VFP i n SQL elementele
c) controlul accesului concurent modelului de date relaional.
d) codificarea datelor 5) S se identifice n VFP dou aspecte privind protectia datelor.
.... e) salvarea i restaurarea

46. Protecia BD este asigurat prin:


a) securitatea datelor
b) integritatea programelor
l...t
c) securitatea programelor
d) software de reea
e) SGBD
...._ . ~

Rspunsuri

i....l
1 : - ; 2 : b, d, e ; 3 : a, c ; 4 : b, e ; 5 : c ; 6 : a, c ; 7 : - ; 8 : d ; 9 : e ;
10: b, c, d;
11 :- ; 12: d; 13: a, b, d, e; 14: c; 15: c, d, e ; 16: a, b, c, d; 17:
1....1
a, b, c ; 18 : c, e ;
19 : b, c, d; 20 : b, c, d; 21 : - ; 22 : a, c ; 23 : d, e ; 24 : b, c, d ; 25 :
b, d; 26: c;
\....
27 : a, e; 28 : - ; 29 : b, c, d, e ; 30 : a, c, d ; 31 : a, b, d ; 32 : d, e ; 33 :
b, c ; 34 : a, b, d ;
35 : b, c, d ; 36 : - ; 37 : b ; 38 : a, e ; 39 : - ; 40 : a, c, d ; 41 : b, c, e
42 : a, b, c, e ;
43 : a, c ; 44 : a, c ; 45 : c, e ; 46 : a, e

,_,
78 79
~

3 Realizarea bazelor de date


Aspecte metodologice
....,

,...,

3.1 Aspecte organizatorice privind realizarea unei baze de date


Capitolul3 1"""\

Realizarea unei baze de date se face respectnd o anumit metodologie de


lucru. O astfel de metodologie respect, n cea mai mare parte, activitile
care se parcurg pentru realizarea unui sistem informatic (vezi [LUSA03]). ,...,
De fapt, o aplicaie cu baze de date este un caz particular de sistem
informatic i anume unul care are organizarea datelor n memoria extern n
baze de date. n acest fel, activitatea de realizare a unei baze de date trebuie
...,
3.1. Aspecte organizatorice privind realizarea unei baze de date s nceap, conform oricrui management de proiect, cu organizarea
3.2. Obiectivele urmrile la realizarea unei baze de date acesteia, adic pregtirea aciunii. n cadrul acestei pregtiri, innd cont de
~
3.3. Etapele pentru realizarea unei baze de date obiectivele urmrite pentru realizarea bazei de date, se va face un fel de
3.4. Aspecte privind eficiena bazelor de date inventar a ceea ce este un minim necesar pentru a se putea realiza baza de
Rezumat date. Se poate astfel, din start, hotr dac activitatea va demara imediat sau
Note bibliografice dac mai sunt necesare alte aciuni pregtitoare. Aspectele organizatorice ar
Cuvinte-cheie trebui s fie stabilite independent de SGBD care va, fi utilizat pentru
Teste-gril i probleme realizarea aplicaiei cu BD. _..' ,...,
Prezentm, n continuare, cteva aspecte mai importante ur~rite n
activitatea de organizare a unei baze de date:
1. Organizarea intrrilor de date. Informaiile care se vor ncrca iniial n ...,
BD, precum i cele care se vor utiliza pentru actualizare, pot proveni
din diferite surse. De cele mai multe ori, aceste surse furnizeaz date
care trebuie filtrate sau transformate i nu ca atare. Aadar, organizarea
intrrilor de date pentru o BD se refer la:
- sursa datelor, adic se ine cont de documente primare existente, de
posibilele fiiere care exist n alte aplicaii operaionale i care pot
furniza date, de procedurile de calcul care pot genera datele necesare
etc.;
,...,
81
.
~
~
f;-1;
i"l>
:li~
~~~;;
obinute cu VFP instalat cu opiunea Standalone - nu este necesar ca pe ~~,;. Etapele care trebuie parcurse pentru determinarea eficienei BD:
calculator s fie instalat VFP la rularea aplicaiei. . I. Studiul costurilor iniiale- de realizare:
costul software necesar pentru organizarea datelor n BD;
5. Dezvoltarea sistemului
costul hardware necesar pentru stocarea structurii BD i apoi a
t..... Imediat dup darea n exploatare a BD, n mod continuu, pot exista factori
pe1turbator.i care genereaz schimbri n BD. datelor;
Schimbrile necesare trebuie preluate de BD uor i "din mers". costul impus de trecerea de la sistemul existent - manual,
Factorii pot fi: organizatorici, datorai progresului tehnic, rezultai din informatizat cu soluie cu fiiere, la noua soluie cu SBD;
~
cerinele noi ale beneficiarului, din schimbarea metodologiilor etc. costul resurselor necesare realizrii BD - umane, materiale,
n VFP dezvoltarea aplicaiei cu BD poate fi fli.cut relativ uor datorit informaionale etc.;

apartenenei sale la categoria de SGBD relaional. costul consultanei tehnice privind decizia de a se realiza o BD i
L..
apoi privind modalitatea ei de realizare.
2. Evaluarea costurilor de funcionare a BD:
3.4. Aspecte privind eficiena bazelor de date
costul de punere n funciune care include testele i implementarea
"- BD la parametrii proiectai;
Realizarea unei aplicaii cu BD implic un mare consum de resurse, pe o
perioad ndelungat, datorit complexitii unei astfel de activiti. De costul de exploatare curent a BD de ctre beneficiar cu asisten!
aceea, un astfel de efort nu poate fi fcut fli.r un calcul de eficien. tehnic de la proiectant;
1

L Efectele directe i indirecte ale bazelor de date conduc spre eficien, mai costul de ntreinere i dezvoltare a BD de ctre proiectant n
ales pentru aplicaiile mari i complexe, acolo unde alte produse informatice colaborare cu beneficiarul. Dezvoltarea trebuie s poat fi fcut cu
nu fac fa. un efort dU mai mic i fr a se ntrerupe funcionarea BD.
L Efectele realizrii i utilizrii BD rezult, n mare parte, din avantajele 3. Calcule de rentabilitate privind ntregul proces de realizare i
oferite de o astfel de soluie informatic: funcionare a BD presupune:
elimin redundanele necontrolate prin modul de organizare; utilizarea unor metode specifice activitii de rc;:,alizare a calculelor
L crete productivitatea activitii informatice prin aplicarea unor tehnici de rentabilitate privind BD. Un exemplu de eastfel de metod este
de proiectare; Analiza Cost-Beneficiu.
r ofer suport informa~onal optim pentru conducere i execuie prin sursa utilizarea unor produse software, dar pot fi i hardware, specializate
L de informaii pe care o ofer; pentru realizarea i exploatarea BD. Acestea, prin facilitile de
permite interogarea datelor de ctre toate categoriile de utilizatori prin produse dedicate pe care le ofer cresc performana, dar pot scdea
r
facilitile de utilizare oferite de SGBD; portabilitatea BD. De exemplu o BD de regsire documentar
conduce spre aplicaii deschise prin numeroasele tehnologii informatice realizat i exploatat cu un SGBD dedicat are performane de
'-'
care sunt integrate cu tehnologia bazelor de date ntr-un SBD evoluat. interogare remarcabile dar portabilitatea este redus.
Efortul depus pentru realizarea i ntreinerea unei BD este considerabil i
Rezumat
..._ de aceea investiia necesar trebuie fundamental pentru a putea fi
Activitatea de realizare a unei baze de date este complex i cere un efort
recuperat.
considerabil. De aceea, ea trebuie realizat sistematic, dup o metodologie
Fundamentarea investiiei pentru o aplicaie 'cu BD se face prin studiul de
adecvat.
fezabilitate (analiza preliminar) care va conine un studiu al costurilor i o
1_. nainte de a se realiza o baz de date, se are n vedere organizarea acestei
evaluare a efortului de realizare i ntreinere.
activiti - intrrile, memorarea datelor, protecia datelor, legturile datelor -

i...l 98 99
i..
?;:!; .....
~-~ ...
;.
astfel nct s se poat decide dac merit sau nu demararea aciunii Teste-gril
respective.
l. n metodologia de realizare a BD diagrama entitate-asociere rezult
Dup luarea deciziei c baza de date este posibil a fi realizat, se fixeaz
n urma:
1
cteva dintre obiectivele importante ale acestei activiti: partiionarea,
deschiderea, eficiena, reutilizarea, regsirea, accesul, modularizarea, a) analizei funcionale
protecia, redundan1a. independena.
b) proiectrii dinamice ~

n continuare, pentru realizarea bazei de date, se poate urma o metodologie c) analizei structurale
anume sau se pot parcurge etapele 1 activitile prezentate: analiza de d) analizei dinamice
sistem, proiectarea noului sistem, realizarea componentelor logice, punerea e) proiectrii logice '
n funciune, dezvoltarea. 2. La organizarea unei baze de date se urmresc aspectele:
Att pe parcursul realizrii unei baze de date ct i dup aceea la exploatarea a) organizarea intrrilor de date
ei, trebuie avut n vedere eficiena acestei activiti. Acest lucru este b) organizarea ieirilor de date n
important pentru c investiia pentru realizarea unei baze de date este mare c) organizarea memorrii datelor
i ea se recupereaz n timp ndelungat. Eficiena bazei de date va avea n
d) organizarea prelucrrilor finale
vedere cteva aspecte: studiul costurilor iniiale, evaluarea costurilor de e) organizarea programelor
,...,
funcionare, calcule de rentabilitate.
3. Eficiena unei baze de date poate fi evaluat prin:
Note bibliografice
Aspectele legate de organizarea i obiectivele unei baze de date sunt tratate,
a) studiul organigramei ntreprinderii ,..,
b) studiul costurilor iniiale
n special, n cri care abordeaz aspectele teoretice ale acestui domeniu al c) calcule de rentabilitate
informaticii [VELI05],[VELU03], [CONNOO], [DATE04], [DATE06]. d) calcule relaionale
Metodologii de realizare a bazelor de date sunt prezentate n cri care e) algebra relaional
mbin aspectele teoretice cu soluii practice [VELU03], [LUSA03],
[DIAZOO]. Cartea noastr ns, a avut, pentru acest capitol, ca principale 4. n metodologia de realizare a BD, construirel!..unei viziuni (view) se
surse: experiena autorilor n domeniul realizrii aplicaiilor informatice, face prin: ~

precum i sursele bibliografice [RAGEOO] , [RICCOl], unde sunt prezente a) proiectarea schemei externe
activiti i exemple de aplicare a lor. b) proiectarea schemei conceptuale
c) proiectarea schemei interne '
Cuvinte-cheie d) analiza logic
organizarea bazei de date obiectivele bazei de date e) analiza global
1
metodologii de realizare a BD analiza de sistem
analiza structural analiza funcional 5. Obiective urmrite n realizarea unei BD sunt:
...,1

analiza dinamic proiectarea bazei de date a) aceleai date nu pot fi utilizate n moduri diferite
schemele bazei de date eficiena bazei de date b) creterea preului de cost pentru memorarea datelor
c) cererile de regsire trebuie s fie doar prestabilite
d) aplicaiile cu baze de date trebuie s poat reutiliza un fond de date
existent deja
e) redundana minim dar necontrolat
-
-
IDO 101
'-
~~r
1....1
6. Aplicaiile cu baze de date pentru domeniul economic se deduc, n ,tt ]lspunsuri
mare parte, din funciile ntreprinderii:
a) coordonare-control 1 : c ; 2 : a, c ; 3 : b, c ; 4 : a ; 5 : d ; 6 : b, c, d ; 7 : c, d, e ; 8 : a, e
b) cercetare-dezvoltare ; 9 :b, e ;
..._
c) comercial 10: b, c;
d) producie
e) organizare
._.
Probleme
7. Tipurile de utilizatori pentru baze de date sunt:
a) ntreprinderi mici i mijlocii 1. Pornind de la funciile ntreprinderii s se aleag o acti viwte pentru
b) agregai
'-" realizarea unei BD. S se identifice aspectele privind organizarea
c) intensivi
unei astfel de BD.
d) finali 2. Pentru realizarea unei BD alese s se descrie, pe scurt, obiectivele
e) de specialitate
....... sale .
3. Pentru dezvoltarea unei BD alese s se realizeze studiul situaiei
8. n metodologia de realizare a unei BD etapa de proiectare conine:
a) alegerea SGBD-ului existente.
4. Pentru dezvoltarea unei BD alese s se realizeze analiza de sistem
b) alegerea personalului implicat
sub cele trei aspecte: stmctural, funcional, dinamic.
c) alegerea entitilor din lumea real
d) proiectarea dinamic
5. S se aleag un SGBD pentru realizarea BD, identificnd o serie de
e) proiectarea schemelor criterii care se au n vedere.
'
6. Pentru BD aleas, pornind de la diagrama entitate-asociere, s se
9. ntr-o metodologie de realizare a BD activitatea de analiz se proiecteze schemele BD: conceptual, logic, fizic.
desfoar sub aspectele: 7. Pornind de la schema conceptual a BD alese s se..scrie n limbajul
'-- a) informaional static din VFP i/sau n SQL: '
b) structural crearea bazei de date;
c) modular crearea structurii de date, inclusiv restriciile de integritate;
1.....1 d) obiectual actualizarea structurii de date;
e) funcional ncrcarea datelor n tabele;
actualizarea datelor n cele trei moduri: adugare, modificare, tergere;
-...J
10. Pentru realizarea unei BD, la alegerea SGBD se ine cont de s se vizualizeze datele;
aspectele: s se realizeze accesul la date n cele trei moduri: secvenial, direct dup
a) cerinele legislative cheie, direct dup numr de realizare.
b) cerinele aplicaiei 8. Pentru BD aleas s se fac un calcul de eficien.
1.--
c) facilitile tehnice SGBD
d) limbajele de programare universale
e) limitele utilizatorilor
.....

;..1 102 \03


,...,

4
-.
BAZE DEDATE
RELAIONALE (BDR)
,._

4.1. BDR bazele


Capitolul4 Teoria BDR a fost primit
ntotdeauna favorabil de ctre specialiti att
datorit abordrilor teoretice - fundamentare riguroas, cfit i datorit
performanelor practice- optimizarea bun a timpului i spaiului.
4.1. BDR bazele ~

4.2. Tehnica normalizrii Bazele de date relaionale - BDR utilizeaz modelul de date relaional i
noiunile aferente (vezi cap.2) i fac parte din generaia a II a de baze de

-
4.3. Calculul relaional. Algebra relaional
Rezumat date.
Note bibliografice BDR au o solid fundamentare teoretic, n special prin cercetrile de la
Cuvinte-cheie ffiM conduse de E. F. Codd, care a dezvoltat teoria relaional. Aceasta se
bazeaz pe teoria matematic a ansamblurilor i i este format dintr-un set
Teste-gril i probleme
de concepte, metode i instrumente utilizate pentru realizarea aplicaiilor cu
baze de date relaionale petfonnante.
BDR este un ansamblu organizat de tabele 1 relaii mpreun cu legturile
dintre ele.
.J

Pentru c bazele de date au evoluat din fiiere i pentru c fiierele se ,...,


utilizeaz n continuare alturi de BDR, o comparatie ntre conceptele dintre
cele dou modaliti de organizare a datelor n memoria extern est.e
necesar. Vom prezenta, n continuare, cteva dintre avantajele lucrului cu.
BDR fa de lucrul cu fiiere . -
Criteriu de compara tie BDR Fiiere
1. Independenta datelor fat logica i fizic fizic ......
de orogramele de aplicaie
f. Niveluri de structurare a conceptual, logic i fizic logic i fizic
datelor
~ .Deschidere i portabilitate mare mica .-..
~- Reprezentarea i utilizarea simplificat prin modelul de complicat
datelor date relaional
~ Structura de date se n dictionarul BD n programe
~tn:az -
,.-,

105
~
.._
1

r
......
n VFP: nu se folosete niciun limbaj bazat pe algebra relational. Elemente
de algebr relaional se regsesc att n limbajul procedural propriu ct i
;\t: Se bazeaz pe transfonnarea (mapping) unui atribut sau grup de atribute
ntr-un atribut dorit prin intermediul unor relaii. Altfel spus, se poate
r n nucleul extins de SQL, prin construcia unor expresii relaionale cu transforma oricnd o expresie din algebra relaional n alta din calculul
operanzi tabele, iar operatorii relaionali pot fi proiecia, selecia, jonctiunea. relaional i invers, echivalent ca funcionalitate (vezi n cartea [YELUOO]).
~
Astfel, n li~bajul din VFP exist instruciunile COPY TO pentru proiecie SGBDR realizeaz aceast transformare pentru optimizarea regsirii.
r i JOIN pentru jonciune. n nucleul extins SQL exist comanda SELECT Rezultatul este o relaie 1 tabel care se poate utiliza ntr-o alt 1ransformarc
..... care are clauzele FIELDS cu DISTINCT pentru proiecia, WHERE pentru relaponal.

selecie,FROM din dou tabele combinat cu WHERE pentru jonciune. n VFP: se mbin elemente de calcul relaional i algebr relaional, aa
Exemplu. Pornind de la tabela BENI s se aplice operatorul relaional de cum artam mai sus. Orice expresie din algebra relaional poate fi
'--' proiecie astfel: n tabela bl rezultat se vor gsi dou atribute - locbb i transformat oricnd intr-una echivalent n calculul relaional i invers.
denb. VFP conine un nucleu extins de limbaj relaional bazat pe transformare i
anume SQL. Acesta face transformarea automat.
....... n limbajul din VFP: Pentru expresiile relaionale scrise n limbajul din YFP, acesta nu face
USE beni automat transformrile relaionale .
INDEX ON denb+locb TO fis 1 UNIQUE
....... COPY TO bl FIELDS denb, locb Grafica relaional

n SQL: Domeniul denumit grafic relaional ofer o interactivitate mare pentru


SELECT denb, locb DISTINCT FROM beni construirea cererilor de regsire relaional.
Reprezentarea grafic a proieciei: Utilizatorul specific cerea alegnd sau completnd un ecran structurat

- BENI.dbf
codb
1
2
denb
ibm
scop
locb
Bucuresti
Bucuresti
sirb
Eminescu
operei
telb
0722123456
0721123456
p~ J

Poate fi folosit de ctre toate categoriile de utilizatori n irif~rmatic.


ln VFP: exist o implementare de limbaj QBE prin asistentul Wizard Query.
3 ibm Bucuresti mosilor 0733123456 Acesta permite construirea interactiv a unor cereri de regsire prin
..... 1 proiecie dup atributele denb i locb utilizarea unor primitive grafice. Utilizatorul parcurge paii indicai de
bl.dbf
asistent i completeaz sau bifeaz anumite opiuni la alegere.
denb locb
ibm Bucuresti
........
scop Buuresti Rezumat
Teoria relaional este foarte bine fundamental teoretic i a fost dezvoltat
riguros la IBM de ctre cercettorul E. F. Codd i echipa lui .
Transformarea relaional
Se definete noiunea de baz de date relaional - BDR innd cont de
Domeniul denumit transformarea relaional ofer o putere de regsire modelul de date relaional. Se face o comparaie a noiunilor utilizate n
..... echivalent cu cea din calculul relaional i algebra relaional . BDR cu cele utilizate la lucrul cu fiiere.

.,_; 122 \23

,. o:.
~:~
~({_
Realizarea unei aplicafii cu BDR este o activitate complex, care presupune dependene funcionale calculul relaional
expresia relaional calculul predicatelor ......,
obligatoriu proiectarea bazei de date. n acest sens se folosesc diferite
tehnici, dintre care cea mai utilizat este normalizarea. Scopul tehnicii de cuantificatorii algebra relaional
normalizare este de a elimina, n procesul de proiectare a BD, anomaliile de operatorii relationali limbaje relaionale
......,
actualiz.are. transformarea relaional grafica relaional
Sunt prezentate cele cinci forme nomzale - FN 1 la FNS, care se construiesc
n procesul de proiectare a unei BDR. _,
n continuare, se prezint un exemplu practic de proiectare a unei BDR prin Teste-gril

tehnica de normalizare, ajungndu-se la o schem conceptual. Sunt


exemplilicate doar primele trei forme normale, deoarece acestea sunt cele l. O tabel este n FN3 dac: .,
mai utilizate n aplica!iile practice. a) este n FN2 i fiecare atribut noncheie depinde n mod netranzitiv de
n finalul capitolului se prezint o sintez a domeniilor imp01tantc din cheia tabelei
teoria relational pe baza crora au fost construite limbajele relaionale: b) este n FNl i fiecare atribut cheie depinde tranzitiv de atributele ......
calculul relaional, algebra relaional, transfomzarea relaional, grafica noncheie
relaional. Fiecare dintre aceste domenii este definit pe scurt, iar apoi sunt c) este n FN2 i are dependene complete
prezentate elemente de implementare n VFP. d) este n FNl i are dependene funcionale incomplete ,....
e) este n FN2 i are cel puin o dependen funcional complet ntre
Note bibliografice atributele noncheie i cheia tabelei
Elemente de teoria relaional sunt prezentate n toate titlurile bibliografice ,...,
care se refer la BDR [DATE04]. [VELU05], [CONNOO]. [DATE06] etc. 2. Calculul relaional:
Pentru partea de proiectarea BDR prin tehnica normalizrii - dependenfe a) are drept construcie de baz expresia de calcul tuplu sau
1
~xpresia

de
.-~
......,
funqionale, forme normale, constrngeri - dar i pentru algebra relaional calcul domeniu
1 calculul relaional, se gsesc explicaii i exemple didactice n [RICCOl]. b) este implementat n limbajul ISBL
c) conine operatorul de jonciune
d) st la baza limbajelor procedurale universale -"\

Cuvinte-cheie e) folosete noiunea de formul bine definit

3. Se d tabela Tl: ,...,


teoria relaional proiecie
CODSTUD NUMESTUD NOTA DATAN
selec)ie jonciune 5 Ion 10 10.10.84
intersecie Il An da 10
reuniune
2 Ion 10
10.11.83
08.08.82
....,
diferenl produs cartezian
..._ll__ Ion 9 22.02.84
baze de date relaionale - BDR CoddE.F.
proiectare BDR normalizarea ....,
forme normale anomalii de actualizare

124 125 "...

~
L
r
.............. _---- ......... - trui tabela T2 1. O baz de date este n FN l dac:
L NUMESTUD
", _____ ---------
NOTA a) are cel puin o tabel n FN 1
Ion 10
10
b) este n FN2
Andn
Ion 9 c) are toate tabelele n FN 1
L.
d) are o tabel normalizat
aplicnd operatorul relaional de:
e) are o tabel nenormalizat
a) selecie
L...o
b) jonciune 8. O tabeleste n FN 1 dac:
c) cuantificatorul existenial
a) exist atribute la nivel de grup
d) proiecia
....... b) exist atribute repetitive
e) intersecia
c) nu exist atribute la nivel de grup
d) exist atribute decompozabile
4. La proiectarea BDR prin tehnica normalizrii:
..... e) nu exist atribute repetitive
a) se nltur anomalii de actualizare doar dac se ajunge pn n FN3
9. Concepte similare ntre BDR i fiiere sunt:
b) se nltur anomalii de actualizare doar dac se ajunge pn n FN4
a) tabel- cmp
c) se nltur anomalii de actualizare doar dac se ajunge pn n FN5
1.- b) tabel- fiier
d) se nltur anomalia de tergere
c) atribut- domeniu
e) se nltur doar anomalia de modificare d) atribut- fiier
- 5. O tabel este n FN2 dac:
e) tuplu -fiier

a) este n FN3 i nu are dependene complete 10. n BDR:


L...o b) este n FN 1 i are doar dependene incomplete
a) structurarea datelor se face doar la nivel fizic -"
c) nu are dependene funcionale complete
b) structurarea datelor se face la ni vei conceptual
d) este n FNI i fiecare cmp noncheie este dependent funcional
c) structurarea datelor se face la nivel logic
'-' complet de cheia tabelei
d) structura de date se pstreaz n programele de aplicaie
e) este n FNI i nu are dependene funcionale incomplete
e) structura de date se pstreaz n dicionarul BD

i.... 6. Calculul relaional: 11. La proiectarea BDR:


a) se bazeaz pe calculul predicatelor
a) se folosete tehnica normal
b) st la baza limbajelor relaionale neprocedurale
b) se obine diagrama entitate-asociere
c) poate fi orientat pe tuplu avnd drept construcie de baz expresia de
c) se pleac de la schema conceptual
calcul tuplu d) nu se folosete noiunea de cheie primar
d) este implementat n limbajul QUEL
~
e) nu se folosete noiunea de dependen funcional
e) conine operatorul de proiecie

....., 126 127


..,
12. LMD din SGBDR:
a) se pot baza pe diagramele de dependen
logic- se creaz tabela virtual VI format, din cmpurile denb i locb
din tabela BENI; ..-,
b) se pot baza pe normalizare
fizic- se ordoneaz tabela BENI dup localitate.
c) se pot baza pe transformarea relaional
S se proiecteze o BDR prin telmica normalizrii evideniind
d) se pot baza pe calculul aritmetic
4.
primele trei forme normale i obtinnd schema conceptual.
..,
e) se pot baza pe algebra booleana
5. S se afieze din tabela BENI nregistrrile care au codul
beneficiarului cuprins ntre 1O i 20 inclusiv. .....,
13. Algebra relaional:
6. S se aplice operatorul rela!ional de proiecie pentru tabela BENI,
a) folosete cereri de regsire
obinndu-se tabela cu atributul Locb.
b) are operanzi doar tabele
7. S se aplice operatorul rclaional de selecie pentru tabela BENI, ......,
c) are operatorul de reuniune
obinndu-se tabela cu tuplurile pentru care codb> 22..
d) nu are operatorul de intersecie
8. S se aplice operatoml relaional de jonciune ntre tabelele BEN! i
e) nu are operatorul de proiecie
CONTR, obinndu-se o tabel cu tuplurile care au atributul .....,
localitate egal cu bucureti.
Riispunsuri
9. S se afieze din tabela BENI doar atributul denb i tuplurile pentru
care atributul cobd> 100. S se lucreze cu asistentul Query Wizard. ......,
1: a ; 2 : a, e ; 3 : d ; 4 : d ; 5 : d, e ; 6 : a, b, c, d ; 7 : b, c ; 8
: c, e ; 9: b ; 10: b, c, e; 11: - ; 12: c ; 13: a, b, c
......,

Probleme
.-"
,....,
Se d tabela BENI(codb N,4; denb C,l5; Iocb C,l5, telb N,IO).
1. S se actualizeze structura de date a tabelei BENI astfel:
se adaug un nou cmp denumit ibanb ir de caractere, de lungime 24; ...,
se modific atributul denb astfel nct s fie de lungime 20 de caractere;
se ~terge coloana te/b.
2. S se realizeze pe tabela BENI acces secvenial pentru afiarea
beneficiarului care are codul 22 i apoi acces direct pentru afiarea
beneficiarului care are codul 2.
-
3. S se lucreze cu baza de date de desfacere pe cele trei niveluri: ..-,
conceptual - se creaz baza de date APROV i n cadrul ei tabelele
PROD, CONTR, BENI, atandu-se cel puin dou restricii de
integritate; .......

128
129 .....,
-
1

Note bibliografice 3. Tehnici de implementare a BDOO sunt:


1..;
a) portabilitatea, partiionarea
Pentru realizarea acestui capitol, autorul a valorificat experiena sa de
analiz i proiectare a numeroase aplicaii cu baze de date dar i surse
b) gestiunea mediului, reprezentarea obiectelor
....... bibliografice . c) gestiunea persistcnei, gestiunea memoriei
Pentru definirea conceptului de BDOO s-au folosit referinele [EMBL98] iar d) extensibilitatea, distribuirea major
pentru partea de proiectare [RICCOl], [DIAZOO]. e) flexibilitatea, portabilitatea
Elemente de implementare a tehnologiei orientate obiect n sistemele
4. n procesul de proiectare a BDOO obiectele pot fi grupate. dup
~

relaionale se gsesc n [VELU03] i [VELUOI].


structura lor, astfel:
a) compuse, complexe
~~ Cuvinte-cheie b) simple, compozite
c) agregate, concatenate
tehnologia orientat obiect baze de date orientate obiect
d) complexe, congruente
clase de obiecte obiecte
e) asociate, agregate
metode proprieti
identificator de obiect ierarhii de clase 5. La proiectarea unei BDOO se pot utiliza metodele:
motenirea proiectarea orientat obiect a) diagrama obiectelor
........
diagrama obiectelor specificaiile obiectelor b) specificaiileobiectelor
persistena reutilizarea c) normalizarea
d) diagramele de dependen
........
Teste-gril probleme e) distribuirea obiectelor

6. n BDOO trebuie implementate caracteristicile de baz


1. Programarea vizual n VFP este o : .- '
'-" (fundamentale) ale obiectelor:
a) tehnic de distribuire a datelor
a) fncapsularea, polimorfismul, partiionarea
b) modalitate de reprezentare a datelor n BDR b) compunerea partiionarea
c) metod multimedia distribuit c) succesiunea, flexibilitatea
'-"
d) tehnic de programare orientat obiect d) ncapsularea, succesiunea, polimorfismul
e) tehnic de programare structurat e) motenirea, compunerea, flexibilitatea
....... 2. Dezvoltarea generaiei a treia de BD se realizeaz n condiii 7. Caracteristici ale claselor de obiecte implementate n VFP sunt:
specifice date de: a) ierarhia
a) organizarea BD b) ncapsularea
~..o' c) containere
b) noile tipuri de aplicaii informatice
d) controale
c) contextul informatic
e) metode
d) utilizatorii BD
.......
e) beneficiarii BD

...... 142
143
8. Caracteristici ale BDOO sunt: height =200
a) permite abordarea unui domeniu limitat de tipuri de date width=220 -,
b) structura de date este mult complicat =
caption "Fereastr"
c) independena datelor fa de programe este parial PROCEDURE sfrit
el) se trateaz n mod unitar datele, programele i comunicaia CLEAR EVENTS ....,
c) asigur comunicaia att ntre date ct i ntre programe ENDDEFINE
DEFINE CLASS cmesaj AS CommandButton
9. Dezvoltarea BDOO a fost favorizat de urmtoarele aspecte: left =20
a) evoluia limbajelor de programare procedurale top 100=
b) apariia limbajelor de asamblare height= 30
c) apariia datelor de tip text width =50
d) apariia sistemelor relaionale caption =''MESAJ"
c) apariia datelor de tip multimedia vizible = .T.
PROCEDURE click
1O. Concepte din BDOO sunt: ,.....,
a) tipuri de obiecte
=MESSAGEBOX )"Mesaj de test")
ENDDEFINE
b) tabele
DEFINE CLASS Cstop AS Cmesaj
c) metode .......,
left =80
d) tupluri
c) mesaje
=
caption '~STOP"
PROCEDURE Click
THISFORM.RELEASE
Rspunsuri ENDDEFINE
/

1 : d ; 2 : b, c ; 3 : b, c ; 4 : b, e ; 5 : a, b ; 6 : d ; 7 : a, b ; 8 : d, e -~-~

S se identifice: clasele de obiecte, obiectele, proprietile, metodele, ,.....,


9 : e ; 1O : a, c, e
mesajele.
2. S se codifice o clas de obiecte nou bazat pe una existent deja.
Probleme Noua clas va avea dou proprieti i o metod n care se va referi -,
Notei. Exemple de probleme rezolvate n VFP obiectual vezi n capitolul 7. una dintre proprieti.
1. Se d secvena de instruciuni n VFP, pentru programare orientat 3. S se instanieze un obiect pentru o clas de obiecte existent, care a
obiect: fost declarat de utilizator. S se refere prin calificare o proprietate i
ferUnu = CREATEOBJECT ("Clasa") -,
o metod.
ferUnu.ADDOBJECT )"btnMesaj", "Cmesaj") 4. S se defineasc o subclas avnd ca superclas una existent deja,
ferUnu.ADDOBJECT ("btnStop", "Cstop") care este oferit standard de sistem. Se va defini n subclas o
ferUnu.SHOW proprietate suplimentar, fa de cele motenite, precum i cod surs "'1
READ EVENTS suplimentar ntr-o metod nou.
DEFINE CLASS Clasa AS Form 5. S se defineasc o clas care s aib dou proprieti i o metod,
left =20 toate protejate, aplicndu-se astfel caracteristica de ncapsulare. ,...,
1
top = 20

144 145
~
ntr-o BDD utilizatorul formuleaz cereri de regsire distribuite, iar acestea 2. Din fluxul de prelucrare a unei cereri distribuite fac parte operaiile:
sunt prezentate pe baza unui flux de prelucrare, ntr-o diagram, descris
- apoi pas cu pas.
a) SGBDD evalueaz i descompune cererea global
b) executorul distribuit lucreaz cu un catalog (dicionar) de structur
global
Pentru utilizator exploatarea BDD trebuie s se fac n acelai mod ca i
~"...., pentru o BD local, sarcina de a asigura diferite niveluri de transparen c) executorul distribuit mparte cererile locale n subcereri
d) sistemul de operare interogheaz BD local i afl rspunsul
revenind SGBD distribuit.
e) SGBD local compune rspunsurile locale cu ajutorul catalogului de
structur global

Note bibliografice 3. Care din urmtoarele tipuri de baze de date pot fi ntr-un sistem
Sinteza din acest capitol este o iniiere n BDD i a fost construit din
distribuit ? : 1) compuse, 2) centralizate, 3) multiplicate, 4) indexate,
...... [VELUOO), [CONNOO), [DATE04]. 5) partiionate, 6) compozite.
Aspecte suplimentare se gsesc n referina bibliograflc (COD099), dar i a) 2, 3, 5
n referinele care trateaz sistemele de baz de date - database systems. b) 1, 2, 3
........ c) 4, 5, 6
d) 3, 4, 6
e) 2, 5, 6
Cuvinte-cheie
'-'
4. Caracteristici ale unei BDD sunt:
arhitecturi de BD caracteristici BDD
a) utilizatorul manipuleaz BDD fr a cunoate localizarea datelor
reele de calculatoare baze de date distribuite - BDD
b) criteriile dup care se distribuie datele depind de conducerea
localizarea datelor
distribuirea datelor ntreprinderii beneficiare i de conducerea firmei care produce
accesul concurent niveluri de referin n BDD sistemul
tipuri de BDD cereri de regsire distribuite c) datele pot fi duplicate, dar acest lucru este invizibil pent~ utilizator
......
d) coerena BDD va fi asigumt de sistemul de operare
e) concepia de organizare a unei BDD este n totalitate diferit de ce a
unei BD locale
...... Teste-gril

1. n structura unei BDD se regsesc schemele: 5. Care din urmtoarele variante sunt criterii (moduri) de distribuire a
datelor?: 1) uniform, 2) mixt, 3) mu1tifonn, 4) mixt-complex,
a) extern de sistem 5) liber, 6) compus, 7) compozit.
b) conceptual global a) 1, 2, 3
c) extern local b) 1, 1, 5
1...1 d) intern global c) 2,4, 6
e) intern de flux d) 5, 6, 7
e) 2, 4, 7

l54
155
.......
.....
6. Componeme software dintr-o reea de calculatoare pot fi:
a) LAN Rspunsuri

b) WAN
.....
c) SGBD 1 : b, c, d ; 2 : a, c ; 3 : a ; 4 : a, c ; 5 : b ; 6 : c, d ; 7 : a, b, c, d, e
d) SO locale 8:- ; 9: e ;
---.
e) BD

7.
a)
n BDD:
exist mai multe colecii de date
Probleme
.-.
1. Se d o reea de calculatoare LAN. S se alctuiasc o configuratie
b) structurarea datelor se face confonn unui model de date
de componente software necesare pentru a lucra cu o BDD. ,.....
c) datele sunt amplasate pe mai multe noduri
d) datele sunt tratate unitar la nivel logic 2. La o firm constructoare de calculatoare se dorete s se realizeze o
BDD pentru activitatea de producie. S se propun caracteristicile
e) datele sunt organizate i prelucrate obligatoriu cu un SGBD
acestei BDD.
8. Caracteristici ale BDD sunt: 3. Se dorete realizarea unei BDD pentru activitatea comercial la o
firm constructoare de mobil, care va avea 10 tabele (Tl la TlO).
a) metodologiile de proiectare utilizate difer n totalitate de cele
S se propun o structurare a acestei BDD pe cele dou niveluri e
folosite pentru BD locale ~

referin.
b) obiectivele sunt total altele fa de o BD local
4. La o fim1 constmctoare de automobile se dorete realizarea unei
c) protecia datelor nu are aspecte suplimentare fa de BD locale
BDD pentru evidena contractelor de vnzare, care va conine 8
d) utilizatorul trebuie s cunoasc localizarea datelor
tabele. S se propun o configuraie de BDD partiionat ntr-o reea
e) accesul concurent la date nu este permis
cu 12 calculatoare. 1 -

5. Se dorete interogarea "de ctre utilizator unei Bf>D. care conine 6 ~


9. Avantaje pentru BDD multiplicate sunt:
a) spaiul ocupat este redus
tabele (TI la T6) cu ajutorul unui SGBD relaional. S se scrie o
b) concurena la date este foarte mare
cerere de regsire care s conin o subcerere.
!-\
c) costul este mic
d) actualizarea datelor este simpl
e) timpul de acces este mic

.....
156
157
....
Va rezulta tabela grafici care va conine o singur nregistrare i un Sunt explicate i exemplificate cteva dintre cele mai folosite generatoare
..... singur atribut de tip General . Graficul va fi salvat ca un obiect de tip din VFP: de proiecte, de forme, de rapoarte, de grafice.
OLE. n unna salvrii vor rezulta dou fiiere: grajic/.dbji grafic/ftp Un studiu de caz privind o aplicaie cu BD relaional. care poate fi un
4. Executm i af~m graficul salvat mai sus parcurgnd paii: model pentru -proiectele studeneti sau pentru dezvollatorii de aplicaii cu
~
deschidem tabela grafici.dbf: fie tastm n fereastra de comand USE baze de date n VFP va fi prezentat n Anexa l. Pe lng codul surs aferent,
grafic l fie selectm din meniul sistem opiunile: File- Open - selectm studiul de caz conine i activitile pe care trebuie s le parcurg

fiierul grafic/ .dbf - OK; proiectantul aplicaiei cu baze de date: analiza (structural. dinamic).

n fereastra de comand tastm BROWSE; proiectarea structurii BD, elaborarea programelor.


n fereastra Browse pe tabela grafici facem dublu click mouse pe
..... cmpul Gen;
apare graficul afiat pe ecran. Note bibliografice

'- Capitolul de mai sus este rezultatul experienei practice i didactice a


Rezumat autorului n ceea ce privete lucrul cu bazele de date relaionale n general i
cu VFP n particular.
....... Capitolul de fa este dedicat programrii n Visual Foxpro, dar el ncepe Testele i problemele din acest capitol sunt concepute de autor, inclusiv
printr-o sintez a noiunilor minime pe care trebuie s le cunoasc studiul de caz din Anexa 1. Anumite teste i probleme sunt preluate din
specialistul, pentru a putea dezvolta aplicaii cu baze de date n VFP. [VELU03], n general cu o serie de adaptri.
...... Acestea constituie de fapt un fel de compendiu VFP: caracterizare general,
modul de descriere a datelor, modul de manipulare al datelor, extensiile din Cuvinte-cheie
VFP. J

..... Prima parte este dedicat aspectelor generale privind VFP: evoluia, Visual Foxpro- VFP baze de date relaionaie
'

faciliti oferite, nouti versiunea 9.0, aria de utilizare, VFP ca sistem SQL limbaje relaionale
relaional, VFP ca SGBD evoluat, moduri de lucru sub VFP, elementele de limbaje de programare programare procedural
.....
limbaj. programare descriptiv programare orientat obiect
n continuare sunt prezentate i ex.emplificate principalele instruciuni din comunicarea ntre sisteme mediul Internet
limbajul propriu din VFP, comparativ cu alte soluii - din SQL, din generatoare asisteni
tip Wizard
'-
generatoarele VFP.
Un paragraf special este destinat nucleului extins de SQL, 'care cuprinde
....... toate comenzile i o parte dintre funciile SQL care sunt acceptate de VFP. Teste-gril
Se face referire la instruciunile din limbajul din VFP care au funcionaliti
similare. Testele care urmeaz acoper cam tot ceea ce nseamn programarea n
Evoluia VFP a nsemnat adugarea de faciliti privind comunicarea cu alte VFP, sub cele dou limbaje pe care le are: limbajul propriu procedural,
sisteme i mediul Internet. nucleul extins de SQL.

..... 226 227


.....
In formularea testelor se consider c baza de date i tabelele aferente sunt 4. Restrictia de integritate NOT NULL se poate defini prin comenzile:
create i au un numr suficient de nregistrri. a) CREATE ....,
Gruparea testelor este fcut dup funcionalitate astfel: b) CREATE TABLE
a) descrierea datelon- c) ALTER TABLE
b) accesul la date; d) MODISTRU
c) actualizarea datelor; e) CREA TE VIEW
d) structurile de program;
e) alte tehnici de programare; 5. Actualizarea structurii de date a unei tabele se face prin comenzile:
f) programarea orientat obiect; a) CREATE
g) programarea n SQL b) CREATE TABLE
c) MODI TABLE
a) Descrierea datelor d) UPDATE DATABASE
e) ALTER TABLE
1""'1
1. Comanda CREATE se folosete:
a) pentru a defini structura de date a unei labele 6. Actualizarea structurii de date a unei tabele se face prin comenzile:
b) pentru a modifica structura de date a unei tabele a) ALTER DATA ....,
c) pentru a afia structura de date a unei tabele b) MODISTRU
d) pentru a defini restriciile de integritate c) MODI DATABASE
e) pentru a defini restricia de tip NULL d) MODI TABLE .....,
e) ALTER VIEW
2. Restricia
de integritate referential se poate defini prin comenzile:
/
a) DEFINE 7. O baz de date se va deschide dac se folosesc comenzile:
b) COPY STRU a) LIST
c) CREATE CURSOR b) DISPSTRU
d) APPEND c) CREA DATA 1""'1

e) CREATE TABLE d) MODISTRU


e) CREATE
3. Pentru a afia structura de date a unei tabele se folosesc comenzile:
a) SELECT3 8. Definirea restriciilor de integritate se face prin comenzile:
b) DISPSTRU a) MODIFY TABLE
c) LISTSTRU b) MODISTRU
d) COPY STRUCTURE c) ALTETABL
c) UPDATE d) ALTE DATA
e) DEFI STRU ...,
2211 229
-
9. Tipul unui cmp dintr-o tabel poate fi specificat prin comenzile: Cu ajutorul comenzii MODI STRU se poate:
.... a) ALTETABL a) actualiza structura de date a unei tabele
b) LIST STRU b) modifica denumirea unui cmp dintr-o tabel
c) CREA c) aduga un cmp nou ntr-o tabel
.... d) MODISTRU d) modifica lungimea unui cmp existent
c) DISPSTRU e) terge un cmp dintr-o tabel
~

1O. Comanda ALTER TAB LE din nucleul SQL se folosete: 15. Se d comanda: CREATE stud
a) doar pentru tabelele incluse ntr-o baz de date Care afirmaii sunt adevrate ?
'--
b) doar pentru tabelele libere a) creeaz fiierul STUD.DBF
c) doar pentru tabelele care nu fac parte dintr-o baz de date b) creeaz fiierele STUD.DBF i STUD.IDX
d) doar pentru tabelele ntre care nu exist legturi c) creeaz tabela STUD
-.. e) doar pentru tabelele ntre care exist legturi d) creeaz tabela STUD i se pot ncrca, opional, date n ea
e) creeaz dicionarul BD
Il. Dicionarul BD se creeaz prin comenzile:
'- a) CREA VIEW 16. Se d comanda: CREATE bcni
b) CREA REPORT Care afirmaii sunt adevrate ?
c) CREATE FORM a) creeaz baza de date BENI
d) CREATE b) creeaz structura de date pentru tabela BEN!
e) CREA TABL c) d posibilitatea descrierii atributelor pentru relaia BENI
d) se pot ncrca, opional, date n BENI
.... 12. La crearea stiUcturii de date a unei tabele se poate specifica: e) comanda este greit .......

a) denumirea atributelor
b) tipul coloanelor 17. Se d secvena: USE beni
.._
c) denumirea bazei de date MODISTRU
d) tipul utilizatorului Care afirmaii sunt adevrate?
e) lungimea cmpurilor a) se poate actualiza structura de date a tabelei BENI
.... b) este greit comanda MODI STRU
13. Tipurile de atribute ntr-o tabel pot fi: c) creeaz i poate doar modifica structura tabelei BEN!
...... a) pointeri d) doar modific cmpuri n tabela BENI
b) caracter e) modific datele din tabela curent
c) timp
.~:;.:;:::.==-~
1.....;
d) logic .. ;~~ p:- '-''JI'r.w F~r.~ ...~
r ~-"' -.-,~~.:~
e) data sistem /:'.') '''1-;.~~
(,
!
.,.,, ........ : .. ::In
!; ~' : .l'\ ~
"" h... .
~J:1
\\ :!lHfJqTFC j/
\~~~.~~- :..~~:::-?-;:
1.- 230 231
:c .,.,-.-..:::
1"'"1

18. Se d secvena : USE prod _ 4. Un fiier de index ataat unei tabele poate fi deschis prin comenzile:
MODISTRU a) SET INDEX TO
Care afirmaii sunt adevrate? b) USE
c) ORDERBY
a) se pot modifica i aduga atribute din/n tabela PROD
d) OPEN INDEX
b) se poate terge un cmp din tabela PROD
e) USE INDEX
....,
c) se poate modifica numele tabelei PROD
d) se poate modifica numele unui cmp din tabela PROD 5. Accesul secvenial ntr-o tabel se poate face prin comenzile:
c) conine o comand greit a) SKIP
b) FIND
'"""
c) GO
d) SCAN ....,
b) Accesul Ia date
e) LOCATE

1. Pe o cale curent, nchiderea tabelei ORA se poate face prin comanda: 6. Accesul direct prin numr de realizare ntr-o tabel se poate face prin
a) USE ora comenzile:
b) USE stud a) LOCATE
c) CLOS DATA b) CONTINUE
c) SEEK ,...,
d) CLOS ALL
d) GO
e) USE
e) SKIP
...,
2. Dac o tabel are un atribut de tip memo atunci i se ataeaz un fiier tip: 7. Pentru a deschide simultan mai multe tabele pe aceeai cale de lucru se
a) .dbf folosesc comenzile:
a) USE .... ~

b) .frx ,....,
c) .idx b) nu se poate -.
c) SELECT
d) .sex
d) APPEND
e) .fpt _.,
e) OPEN

3. Accesul direct dup cheie ntr-o tabel se face prin comenzile: 8. Deschiderea unei baze de date se poate face prin comenzile:
a) FIND a) OPEN ALL _.,
b) SEEK b) USE DATABASE
c) GO c) OPEN DATA

d) CONTINUE
d) USE
e) OPEN TABLE
....
e) LIST

....,

7..!2 233
,....,
9. Comanda USE se folosete pentru a d.eschide; 14. Pentru a ordona datele se pot folosi:
a) o tabel virtual a) restricia de integritate PRIMARY KEY
b) fiierele de index asociate tabelei b) comanda INDEX ON
c) o tabel de baz c) clauza ORDER BY
.......
d) o alt tabel pe o cale de lucru unde este deja deschis o tabel d) CREA TE SORT
e) o baz de date e) SETORDER
i..J
10. Com<mda CLOSE se poate folosi, n funie de clauzele pe care le are, 15. Tipurile de fiiere de index care pot fi ataate unei tabele sunt:
pentru a nchide: a) .CDX
a) o tabel b) .IDX
1.....1
b) o baz de date c) .sex
c) mai multe tabele d) .RTX
d) mai multe baze de date e) .FRX
\"J

e) o fereastr
16. Com<mda USE stud:
Il. n fereastra de comand din VFP: a) deschide tabela STUD pentru citire
1....1
a) se poate folosi comanda IF b) deschide tabela STUD pentru scriere
b) se poate lucra stil compilator c) deschide tabela STUD pentru citire i scriere
c) se poate lucra stil interpretor d) deschide tabela STUD pentru acces secvenial
l....i

d) se poate folosi comanda SCAN e) deschide tabela STUD pentru acces prin numr de realizare
e) se poate folosi comanda DO WHILE
17. Comanda USE contr/IN 2: ,.,
12. Comanda SKIP: a) deschide zona de lucru C .~~

a) se folosete pentru accesul prin numr de realizare b) nchide tabela CONTRl de pa calea doi
b) se poate folosi pentru c VFP numeroteaz tuplurile c) deschide dou tabele n zona de lucru B
'-'
c) se poate f~Josi pentru salt Ia ultima nregistrare d) deschide tabela CONTRl n zona de lucru B
d) se poate folosi pentru salt la primul tuplu e) deschide tabelele CONTRl i IN pe calea B
e) se poate folosi pentru accesul direct dup cheie
'-' 18. Dup executia comenzii USE stud pointerul de nregistrare este
13. Comanda GO TO se folosete pentru: poziionat:

a) accesul secvenial a) pe ultima nregistrare


b) salt la o instruciune din program b) peEOF
c) accesul direct dup numr .de realizare c) pe prima nregistrare
d) accesul direct dup cheie d) neprecizat
e) salt la o tabel dorit e) pe nregistrarea indicat de RECCOUNT()

234
235
~

19. Tabelele unei baze de date pot fi deschise, la un moment dat:


a) toate, dar pe zone de lucru diferite 22. Efectul secventei USE prod ,...,
b) toate, pe o singur zon de lucru LOCATE FOR codp = 22
c) dou, dac se indic ALIAS, pe o zon de lucru DISP
d) maximum cinci tabele o dat LOCA TE FOR codp = 22
~

e) nu se deschide explicit DISP


este:
20. n secvena urmtoare: a) afieaz prima nregistrare pentru care atributul CODP este ......
SELEC 22
USE contrl b) afieaz i a doua nregistrare pentru care atributul CODP
SELE 3 este 22
USE beni c) acces direct la o megistrare pentru care Htributul CODP
SELEB este 22
USE prod d) acceseaz dou nregistrri diferite din tabela PROD
""""
SELEC e) acces secvenial la o nregistrare pentru care atJibutul CODP \..
L!ST este 22
comanda LIST realizeaz :
,....,
a) afieaz structura de date a tabelei C 23. Efectul secvcnei: USE contrl
b) afieaz nregistrri din tabela CONTRl INDEX ON codb TO fl
'"""1
c) afieaz nregistrri din tabela PROD mi= l22
d) Iisteaz numele tabelei din zona C SEEKml
e) afieaz nregistrri din tabela BENI DISP
.....,
CONTINUE
21 . Efectul secven!ei: USE stud
DISP
G03 IN 3 este:
SKIP
.....,
a) acces direct la toate tulpurile pentru care atributul "codb"
DISP
are valoarea 122
este:
b) acces direct la un tuplu pentru care atributul "codb" are ~
a) poziioneaz pointerul pe nregistrri din STUD valoarea "ml"
b) afieaz prima nregistrare din STUD
c) afieaz tulpul pentru care atributul "codb" are valoarea 122
c) poziioneaz pointerul pe ultima nregistrare din STUD
d) are o comand greit ....,
d) afieaz nregistrarea curent de pe calea trei
e) acces secvenial la dou tupluri din tabela CONTRI
e) afieaz nregistrarea a doua din STUD

23o
237
..-.
L-'

24. Efectul secvenei: USE beni c) afi_eaztoate nregistrrile din tabela CONTRI
INDEX ON codb TO fl d) afieaz prima nregistrare din tabela CONTRI
ml =22 e) poziioneaz pointerul pe ultima nregistrare din tabela
m2= IOO+ml CONTRl
-...; SEEK&m2.
DISP 27. Se d secvena de comenzi: USE prod
este: INDEX ON codp TO il
..... a) acces direct la tuplul pentru care atributul "codb" are INDEX ON UPPER (ump) TO u 1
valoarea 122 SELE3
b) acces direct Ia tuplul pentru care atributul "codb" are USE contrl
1..-
valoarea 100 INDEX ON codp TO c l
c) acces direct la un tuplu G05
d) are o comand greit SKIP
e) permite accesul ordonat la tabela BENI DISP
SELE 1
25. Efectul secvenei: USE prod mcheie = 'Buc'
\_.
DISP SEEKmcheie
ml =22 DISP
1-1
FIND mi Care afirmaii sunt adevrate ?
DISP a) afieaz dou nregistrri din tabela CONTR i o singur
este: nregistrare din tabela PROD
a) acces direct la tu piui pentru care atributul "codp" are b) acces direet prin cheie pe ambele tabele .-
valoarea 22 c) acces prin numr de realizare pe ambele tabele
b) acces secvenial pentru care atributul "codp" are valoarea d) acces prin numr de realizare pe calea A
;.... 22 e) conine o comand greit

c) acces direct la tuplul ''mi"


d) afieaz trei tupluri din tabela PROD 28. Se d secvena: USE contrl
e) afieaz un tuplu curent LIST
Care afirmaii sunt adevrate ?
26. Se d secvena: USE contrl a) afieaz doar nregistrarea curent din tabela CONTRI
i- DISP b) afieaz doar nregistrarea curent din tabela curent
Care afirmaii sunt adevrate? c) afieaz toate nregistrrile din tabela CONTRI
a) afieaz nregistrarea curent din tabela CONTRI d) afieaz doar prima nregistrare din tabela CONTRI
b) afieaz nregistrarea curent din tabela curent e) poziioneaz pointerul pe sfritul de fiier
"""'
238 239
"""'
J. Se d secvena de comenzi: USE prod
29. Se d secvena de comenzi: SELE B
SELEC
USE beni
USE contrl
SELED
INDEX ON codp TO c 1
USE contrl
SEEK 1005 """'
LOCA TE NEXT 5 FOR codb < 222
DISP
DISP
SELE l
SELE2 -.
GOTOP
INDEX ON codb TO c l
DISP
mcheie = 10123
SEEK 1005
SEEK mcheie
DISP
DISP
Care afirmaii sunt adevrate?
SELE4
CONTINUE
a) afieaz nregistrarea care are atributul codp
tabelele CONTRI i PROD
=1005 din ...
DISP
b) lucreaz cu tabela PROD pe calea 1 i cu tabela CONTRl pe
Care afi1maii sunt adevrate?
calea 3
a) lucreaz cu tabela CONTRI pe calea 2 i cu tabela BENI pe 1""'\
c) acces direct pe tabela CONTRI i acces prin numr de
calea 4
realiza~e pe tabela PROD
b) alieaz dou nregistrri din tabela CONTRI
d) creaz fiierul de index Cl.idx ataat tabelelor PROD i
c) afieaz doar o nregistrare din tabela CONTRl i doar o ~

CONTRl
nregistrare din tabela BENI
e) conine o comand greit
d) conine o comand greit
~
e) afieaz dou nregistrri pe calea 2 i o singur nregistrare
32. Se d secvena:
USE contrl
pe calea 4
LISTREST
Care afirmaii sunt adevrate ? ,....,
30. Se d secvena: USE contrl
a) afieaz doar ultima nregistrare din tabela CONTRl
DISP REST
b) afieaz toate nregistrrile din tabela CONTRl
Care afinnaie este corect?
c) afieaz toate nregistrrile de la cea curent pn la sfrit 1""'\
a) afieaz doar ultima nregistrare din tabela CONTRl
din tabela CONTRl
b) afieaz toate nregistrrile din tabela CONTRl
d) poziioneaz pointerul pe sfritul de fiier
c) alieaz toate nregistrrile de la cea curent pn la sfritul
e) o comand este greit ~
din CONTRI
d) poziioneaz pointerul pe sfritul de fiier
e) conine o comand greit ~

241
240
-..
'-'

.... 33. Se d secventa de comenzi: USE beni 3. tergerea fizic a unui tuplu dintr-o tabel se face prin comenzile:
SELE2 a) RELEASE
USEprod b) PACK
..... LOCATE RECORD 4 c) ZAP
CONTINUE d) .DELETE
DISP e) DELE
SELE l
L.-1
GOS 4. Actualizarea datelor dintr-o tabel, n sens de adugare la sfrit, se face
DISP prin comenzile:
SKIP-1 a) APPE
........
DISP b) ADD
Care afirmatii sunt adevrate ? c) INSERT
a) creaz un context curent i lucreaz pe acesta d) ZAP
._,
b) afieaz nregistrarea patru din tabelele PROD i BENI e) UPDATE
c) afieaz nregistrarea cinci din tabela PROD i nregistrarea
4 i 5 din BENI 5. tergerea
tuturor tuplurilor din tabela PROD se face prin comenzile:
~ d) exist o comand greit a) DELETE FROM prod
e) acceseaz direct prin cheie pe calea A b) ZAP
c) RECALL .
"-' d) PACK
c) Actualizarea datelor e) DELETE FORcodp=22

........ 1. Actualizarea datelor dintr-o tabel, n sens de modificare, se poate face 6. Actualizarea datelor dintr-o tabel se poate face prin c<?_!Jle'nzile:
prin comenzile: a) APPE
a) BROWSE b) ALTER TABLE
.._ b) EDIT c) INSERT INTO
c) CHANGE d) REPLACE
d) MODI STRU e) DELETE FROM
e) REPLACE
'-' 7. Adugarea unui tuplu la sfritul tabelei curente se poate face prin
2. tergerea logic a unui tuplu dintr-o tabel se face prin comenzile: comenzile:
a) DELETE a) ZAP
1.... b) RELEASE b) APPE
c) PACK c) REPLACE
d) ZAP d) UPDATE
w e) DESTROY e) INSERT INTO

'- 242 243


,...,

8. Comanda c) se afieaz denumirea pentru toate tabelele din directorul curent


BROWSE FIELDS denp d) se afieaz denumirea pentru toate tabelele din baza de date '""'!'
permite: curent

a) r:isfoirea tabelei curente e) se nchide tabela PROD


b) afiarea pe ecran a atributului denp ~

c) atia~ea pe ecran a tabelei denp 12. Pentru a putea lucra cu noiunea de baz de date obligatoriu trebuie
d) vizualizarea tuturor atributelor din tabela curent executate comenzile:
e) vizualizarea tuturor atributelor din tabela denp a) OPEN DATA .....
b) USE
9. Adugarea unei noi tabele la o baz de date existent deja se poate face c) CREA TABLE
d) OPEN TABLE ......
prin comenzile:
a) CREA TABLE e) SET INDEX ON
b) CREA DATA
"'"""\
c) INSERT INTO 13. Se d secvena: USE beni
d) APPEND G03
e) ADDDATA APPEND BLANK
!""'\
Care afirmaii sunt adevrate ?
1O. Pentru a putea folosi comenzile INSERT INTO i UPDATE trebuie a) adaug o nregistrare la sfritul tabelei curente
executat anterior comanda: b) adaug un numr de nregistrri dorit de utilizator
a) OPEN DATA c) adaug o nregistrare dup cea curent
b) CREA DATA d) adaug o inregistrare dup una cu numrul de ?rdine}. '-~

c) CLOSE DATA e) adaug o inregistrare vid .,-


d) SELECT
e) USE 14. Se d secvena: USE contrl

Il. Care este efectul urmtoarei secvene de program ?:


SKIP2
APPEND -
CREA DATA desf DISP
CREA TABLE prod (codp NUMBER(4), denp CHAR(20), ump Care afirmaii sunt adevrate ? .......
CHAR(3)) a) conine o comand greit
DIR b) adaug la sfritul tabelei curente un numr de nregistrri
DISPTABLES dorit de utilizator ~

CLOSEALL c) afieaz nregistrarea curent


a) se creaz baza de date denumit DESF d) adaug nregistrri dup cea cu numrul de ordine 2
b) se creaz tabela denumit PROD e) adaug nregistrri dup cea curent

244 245
"""
'--'

15. Se d.secvena: USE beni c) terge logic din PROD toate tuplurile pentru care atributul
_i REPLACE REST SUBSTR (denb,l,l) WITH 'V' "ump" este ton
LIST d) afieaz prima i ultima nregistrare din tabela PROD
Care afirmaii sunt adevrate ? e) terge logic i fizic toate tuplurile pentru care atributul
<../
a). nlocuiete, doar n tuplul curent, primul caracter "ump" este ton
b) modific date doar n prima nregistrare
c) actualizeaz tabela BENI n sens de tergere logic 1B. Se d secventa: USE beni
d) actualizeaz tabela BENI n sens de modificare PACK
e) nlocuiete, n toate tuplurile, un caracter din atributul denb DELETE NEXT 2
cu valoarea 1 GOTOP
,._;,
LIST
16. Se d secventa: USE prod Care afirmaii sunt adevrate ?
u
DISP a) terge fizic primele dou tupluri
REPLACE RECORD 3 FOR codp = 22 b) . terge logic doar a doua nregistrare
ump With 'TON' c) terge fizic doar a doua nregistrare

- Care
a) modific
DISP
afirmaiisunt adevrate ?
n primele 3 nregistrri atributul "codp" cu 22 i
d) terge logic doar al doilea tuplu
e) terge logic primele dou tupluri

L atributul "ump" cu ton


b) modific nregistrarea a treia, dac atributul "codp" este 22 d) Structuri de program
c) modific trei nregistrri _,
.."..,. 1
'-' d) conine o comand greit 1. Instroqiunea EXIT din programul de mai jos are ca efect:
e) terge logic a treia nregistrare nr=O
USE prod
l.- 17. Se d secventa: USE prod DOWHILE.T.
DISP lF EOF()
DELETE FOR UPPER (ump) = 'KGR' EXIT
GOBOTTOM ENDIF
PACK IF codp< 300
LIST SKIP
Care afirmaii sunt adevrate ? LOOP
a) terge logic tupluri din tabela curent ENDIF
b) terge fizic nregistrri din tabela PROD nr =nr + 1
SKIP

246
~ 247
5. Terminarea forat a execuiei unui program VFP se face prin
ENDDO
comanda:
a) ieirea forat din structma alternativ
a) CANC
b) ieirea forat din structura repetitiv
b) EXIT
c) ieirea din prima structur repetitiv i continuarea cu cea de-a
c) ABOR
doua
d) RETU
.-.
d) nu are nici un efect
e) QUIT
e) ieirea din structura repetitiv i continuarea cu atribuirea
,.....
6. Dintre structurile de program de mai jos, sunt repetitive:
2. Urmtorul program afieaz:
a) REPEAT ... UNTIL
CLEAR
FOR x = 1 TO 9
b) IF ... ENDIF .,
c) FOR ... ENDFOR
? X.
d) DO WHILE ... ENDDO
ENDFOR
e) SCAN ... ENDSCAN
a) cifrele de la 1 la 9 pe 9 linii de pe ecran
b) cifrele de la 1 la 9 pe o singur linie de pe ecran
7. Efectul secven'ei de instruc'iuni de mai jos este:
c) caracterul x de 9 ori
CLEAR '1
d) doar cifra 9
x=22
e) doar cifra 1
STORE 'X' TO x
?x.
3. Codul surs VFP se poate ncrca prin comenzile:
a) afieaz pe ecran numrul 22
a) MODI COMM _./
b) afieaz pe ecran x -~"
b) LOAD ,.....,
c) afieaz valori pe 22 de linii din ecran
c) ED
d) afieaz pe ecran caracterul X
d) STORE
e) apeleaz autodocumentarea HELP
e) INSERT .....
8. Care din urmtoarele afirmaii sunt adevrate pentru limbajul din VFP:
4. Structura de progra IF .. ENDIF este:
a) are structura repetitiv de program
a) alternativ multipl ,_,
b) are structura alternativ de program
b) alternativ simpl
c) are doar structurile secvenial i alternativ de program
c) secvenial
d) repetitiv cu test iniial
e) repetitiv cu test final
d) are structura secvenial de program
e) are doar structurile secvenial i repetitiv de program -
,...,
249
248
,--,
:-:-~
9. Care din urmtoarele afirmaii sunt adevrate pentru Visual FoxPro: 12. Se d secventa de program: SET T ALK OFF
.... a) permite, n fereastra de comand, doar structurile ml =22
secvenial i alternativ m2= 'HP'
b) permite, n.fereastra de comand, toate structurile
fundamentale de program .
=
x 3 m 1 ** 2 +V AL (m2)
\o.oo DISP MEMORY LIKE m*
c) nu permite, n fereastra de comand, structurile repetitive de
?ml,m2
program
d) nu permite nici una dintre structurile fundamentale de @ 16,16SAY 'x3='
L Care afirmatii sunt adevrate?
program
e) permite structurile: secvenial, alternativ, repetitiv de a) afieaz coninutul tuturor variabilelor definite
program b) definete variabila x3 de tip real
\....,1
c) conine o eroare
l O. Se d secvena:
SET T ALK OFF d) folosete dou funcii de sistem
mi =0 c) afieaz, din memorie, toate variabilele
..... STORE l. 2 TO ml, m2, m3
m2= 'IBM'
13. Se d secventa de program: SET T ALK OFF
? ml, m2, m3
m=8
~ Care afirmatii sunt adevrate ?
a) afieaz valoarea O pentru ml
mi= m**2
b) afieaz valoarea 2 pentru m2 lFml < 100
c) conine o comand greit ?8
L.
d) afieaz valorile 1 i 2 pentru m3 ELSE
e) afieaz irul "m1, m2, m3" IF ml > 100
o..J
? 108
11. Se d secvena: SET T ALK OFF ELSE
ml= .T. ? ml
STORE 'VFP' TO m2, ml, m3
ENDIF
=
m3 {01/10/99}
ENDIF
? ml, m2, m3
Ce valori se afieaz?
@ 5,5 SAY mi, m3
Care afirmaii sunt adevrate ? a) 64
a) la afiare, variabila mi este de tip logic b) 108
b) la afiare, variabila m2 este de tip logic c) nu se afieaz nimic
\....' c) la afiare, variabila m3 este detip ir de caractere d) 8
d) conine o comand greit e) m1
e) la afiare, se scrie cte o variabil pe un rnd
\..1

-. 250 25!

--
1"""1
14. Ce va afia secvena de program: SET TALK OFF
m=O ? m1 + 1
@ =6,6 SA Y 'm =' GET m CASEml =3 ~

READ ?m2
=
lF m l.
? m+ l
ELSE
IFm =22
dac se ncarc valoarea 2 ?
OTHERWISE
@ 20, 2 SA Y 'EROARE'
ENDCASE -
a) IBM
@ 20,2 SA Y 'nimic' ~
b) 2
ELSE
c) Il
IF m > 50 d) EROARE
?m e) 3 '"""'
ELSE
? m-1 16. Ce va afia secvena de program: SET T ALK OF
ENDIF STOREOTO m1, m2, m3
ENDIF @ 5,5 SAY 'ml ='GET m1

ENDIF READ
Dac se ncarc valoarea 23 ? m3= m1 * m2+2 1"'"1

m2= 'OK'
a) 22
DO CASE
b) 24
CASE m3 = 1 ....
c) 23
m2=ml-1
d) nimic CASEm3 =2
J

.r-
e) 50 m2='ibm' ~

CASEm3 =3
15. Ce va afia secvena de program: SET TALK OFF m2= m3 * 3
STORE I TO mi, m2 CASEm3 =4 .......
M2=.T.
m2= 'IBM'
ENDCASE
m2 = SPACE (Il)
?m2
@ 5,5GETm2 ......
dac se ncarc valoarea 22?
READ
a) .T.
DO CASE
b) 1
CASE mi= 1 c) ibm
......
?" d) 9
CASEm1=2 e) OK

252

253
1"'"1
,!~

1.,...
17. Ce va afia secvena de program: SET T ALK OFF ..
;~
{ m3=m3+ 1
STORE 'x' TO mi, m2, m3 ELSE
m2=ml +'x' m3=m3-l
J!13 =RECNO () ENDIF
"-
@ 5,5 SA Y 'm3:' GET m3 b) 1Fm#220Rm1>50Rm2<100
READ m3= m3 +1
._ mi= 12 ELSE
DO CASE m3+ m3-J
CASE m3 =mi- 2 ENDIF
1...1 TF m2 = 'xx ' c) IF m # 22 AND m1 > 5 OR m2 < 100
? ml PICTURE '99' m3= m3+ 1
ELSE ELSE
? 'xx' m3=m3-1
ENDIF ENDIF
CASE m3 = 10 d) DOCASE
'-' ? m3 CASE m#22
ENDCASE CASEm1 >5
dac se ncarc valoarea 1O ? CSE m2< 100
a) conine o comand greit m3= m3+ 1
b) 10 OTHERWISE
c) 99 m3= m3-l _..
~
d) XX ENDCASE
e) 12 e) DO CASE

- 18. Secvena: IF m # 22
lF ml >5
CASE m#22
IF m1 > 5
DO CASE
..... IF m2< 100 CASEm2 < 100
m3 =m3 + l m3=m3+1
ELSE OTHERWISE
.._. ENDIF m3= m3-1
ENDIF ENDCASE
ENDIF ENDIF
~ este echivalent cu: ENDCASE
a) IF m # 22 AND ml > 5 AND m2 < 100

1.,.1 254 255


!~
~

1Y. Ce va afia secvena de program: SET T ALK OFF READ

m=22 msecol = man/l 00 T


:i
~
1

IFm>25 IF MOD (man, 100) #O


msecol = msecol + 1
IFm>_20
? 21
ELSE
~
ENDIF
? msecol PICTURE '99'
d) SET TALK OFF
-
? 23
ENDIF STORE O TO man, msecol
ENDIF @ 5,5 SA Y 'anul:' GET man
a) 22 READ
b) 21 =
msecol ROUND (man/100, O) ~

c) 23 ? msecol PICTURE '99'


d) conine o comand greit e) SET TALK OFF
c) 20 STORE O TO man, msecol
""""
@ 5,5 SAY 'anul:' GET man

20. Care din urmtoarele secvenfe de program calculeaz i afieaz secolul READ
dintr-un an ncrcat de utilizator: IF MOD (man, 100) =O
a) STORE O TO man, msecol msecol = man/100
@ 5,5 SA Y 'anul (4 cifre):' GET man ELSE !
r
READ msecol = man/100 + 1 1 '""'
ENDIF !.
msecol = man/100
IF MOD (man, 100) #O ? msecol PICTURE '99' -.. ,...,
msecol = msecol-1
ELSE 21. Considerm intervalele [mll, ml2] i [m21, m22] unde mll < ml2,
? man PICTURE '9999' m2l < m22 i toate sunt numere reale. Ce afieaz secvena de program
t-\
ENDIF urmtoare?

b) @ 5,5 SAY 'anul (4 cifre):' GET man SET STATUS OFF


IF MOD (man, 100) #O STORE l.l TO mll
! i
msecol = man/100 m21 =m2.l
? 'secol', msecol STORE 1.2 TO ml2
ENDIF m22=2.2
c) SET TALK OFF IF mll > m2l
STORE OTOman, msecol ml = mll
ELSE
\: ~
@ 5,5 SAY 'anul:' GET man

256 257 .-.


L..

mi =m21
t~ 23. Ce va afia secvena de program? SET TALK OFF
.:~ .
'-' ENDIF f ml=2
IF m12 < m22 STORE 20 TO m2
("
m2= ml2 DO WHILE mi< m2
ELSE ml=ml+2
m2=m22 ENDDO,,
ENDIF ?m2,,,ml
!.... IF mi<= m2 a) 20, 20
?ml,m2 b) conine o comand greit
ENDIF c) 2, 20
'-' a) marginea inferioar pentru fiecare interval d) 20, 2
b) reuniunea celor dou intervale e) 20, 22
c) marginea superioar pentru fiecare interval
......
d) intersecia celor dou intervale 24. Ce va afia secvena de program? SET TALK OFF
e) conine o comand greit ml=3
STORE 30 TO m2
22. Ce va afia secvena de program? SET TALK OFF REPEAT
mi= 10 ml=ml+3
G STOREOTOm2 UTILml >m2
m3=ml ? ml, m2
DO WHILE m3 > 1 a) 30,30
._ m2= m2+ m3 b) conine o comand greit
m3 = m3 -1 c) 3, 30
ENDDO d) 30,3
._ ? m2 e) 33,30
a) 10
b) o 25. Ce realizeaz secvena de program? DIMEN mv (5)
c) 1 mi=O
d) 54 FOR mi= l T05
e) 55 1F MOD (mi, 2) =O
G mv (mi)= 2
ELSE
mv (mv) = 1
~

259
258
'-'

--
~

ENDIF
ENDFOR b) acceseaz toate nregistrrile din tabel
a) contorizeaz cte elemente 2 i respectiv 1 conine un vector
c) contorizeaz numrul de nregistrrile care conin "codp"
b) extrage dintr-un vector un element 2 i un element 1 sub 100
c) construiete un vector care arc elementele pare egale cu 2 i
d) contorizeaz numrul de nregistrrile care conin "codp"
cele impare egale cu 1 peste 100
d) construiete un vector care are elementele pare egale cu 1 i
e) cumuleaz "codp" dac este mai mic de 100 1
1

cele impare egale cu 2


e) conine o comand greit
28. Ce realizeaz secvena de program? SET T ALK ON
USE prod
26. Ce realizeaz secvena de program? SET T ALK ON mc=O
~

USE contrl DO WHILE NOT EOF ()


mc=O IF SUBSTR (denp, 2, 1)
REPEAT ='M'
IF codp < 100 mc = mc + l
ENDIF
mc =mc + 1
ENDIF SKIP
'1

SKIP ENDDO
UNTIL EOF() a) calculeaz cte nregistrri au primele dou caractere din
a) conine o comand greit
"denp" egale cu M ,......
b) acceseaz toate nregistrrile din tabel b) conine o comand greit

-
c) contorizeaz nregistrrile care conin "codp" egal cu 100
c) contorizeaz numrul de nregistrri pentru car~. primul
-
d) contorizeaz nregistrrile care conin "codp" peste 100
caracter din "denp" este M
e) cumuleaz "codp" dac este mai mic de 100
d) conine o comand greit
e) contorizeaz numrul de nregistrri pentru care al doilea 1"
1
caracter din ,.....,
27. Ce realizeaz secvena de program? SET TALK ON
USE contrl "denp" este M
mc =0
SCAN 29. Ce realizeaz secvena de program?USE prod ~

IFcodp < 100 mc=O


SCAN FOR SUBSTR
mc=mc+ 1
ENDIF (denp,2,1) = 'M'
ENDSCAN mc = mc + 1
ENDSCAN
a) conine o comand greit
_,
260
261
l...i
a) contorizeaz numrulde nregistrri pentru care primul b) afieaz "denb" din nregistrrile pentru care acest atribut
caracter din "denp" este M ncepe cu VE sau ve
b) contorizeaz numrul de nregistrri pentru care al doilea c) afieaz "denb" din nregistrrile pentru care acest atribut
'-- caracter din ncepe cu alte
_"denp" este M caractere dect VE
c) conine o comand greit d) cicleaz Ia infinit
!.... d) calculeaz cte nregistrri au primele dou caractere din e) conine o comand greit
"denp" egale cu M
e) calculeaz cte nregistrri au primele dou caractere din 32. Ce realizeaz secvena de program? USE contrl
..__ "denp" scrise cu M sau m m=RECNO()
ml = m+ 1
30. Ce realizeaz secvena de program? USE beni DO WHILE m <mi
~
DO WHILE NOT EOF() DISP
IF LIKE ('VE*' , denb) ml =mi+ 1
? denb ENDDO
ENDlF a) afieaz toate nregistrrile din tabela curent
ENDDO b) afieaz prima nregistrare din tabela curent
a) afieaz "denb" din nregistrrile pentru care acest atribut c) contorizeaz numrul de nregistrri din tabela curent
'-' ncepe cu VE d) conine o comand greit
b) afieaz "denb" din nregistrrile pentru care acest atribut e) cicleaz la infinit

"-
ncepe cu VE sau ve .-
c) afieaz "denb" din nregistrrile pentru care acest atribut 33. Ce realizeaz secvena de program? SET T ALK OF_F.
ncepe cu alte caractere dect VE USEcontrl
"-
d) cicleaz la infinit m =RECNO() - 1
e) conpne o comand greit STORE O TO mi, mj
FOR mi= 1 T05
.._ 31. Ce realizeaz secventa de program? USE beni FOR mj= 1 TO 10
SCAN FOR LIKE('VE*' , m=m+ 1
denb) ENDFOR
\,... ? denb ENDFOR
ENDDO ?m
a) afieaz valoarea 15
...... a) afieaz "denb" din nregistrrile pentru care acest atribut b) conine o comand greit
ncepe cu VE c} calculeaz numrul de nregistrri din tabela "contrl"

..... 262 263


READ
d) afieaz valoarea 50
@ 5,5 SAY 'nume:' GET nume
e) afieaz valoarea 10
READ
a) ncarc un set de date de Ia tastatur
34. Ce realizeaz secvena de program? SET T ALK OFF
b) este greit pentru c sunt dou comenzi READ
USE contrl ......
c) definete i descrie atributele unei tabele
GOBOTTOM
d} este greit pentru c nu exist DO WHILE
m=RECNO()-
e) definete un meniu
RECCOUNT()
ml=O
37. Comanda @ 5,x SAY y, unde x i y sunt variabile ntregi diferite
FOR m 1 =1 TO 1O
FOR ml = 1 T05
m=m+l
de cinci:
a) este o comand de intrare standard
b) scrie o valoare ncepnd din coloana cinci
-
ENDFOR
ENDFOR
c) este o comand de ieire standad
d) este o comand de citire standard
-
?m
e) este greit pentru c apare x i y
a) cicleaz Ia infinit ,_,
b) conine o comand greit
38. Se d urmtoarea secven de program. Care afirmaii sunt
c) afieaz valoarea 50
adevrate?
d) afieaz valoarea 15
USEtl r-.
e) afieaz valoarea 10
mO=O
1
DO WHILE mO =O -~

35. n VFP sunt implementate explicit structurile fundamentale de


program:
cod =0
stoc= O 1
-
\"
a) unu Ia unu, secvenial, alternativ
@ 5,5 GETmO
b) unu Ia unu, unu Ia muli, muli la muli
READ
,....
c) secvenial, alternativ, unu la muli
APPEBLANK
d) tabel, atribute, tupluri
ENDDO
e) alternativ, repetitiv, secvenial ,....
a) cicleaz la infinit
b) este greit pentru c nu are SAY
36. Ce realizeaz urmtoarea secven de program?
c) citete date de la tastatur
cod= SPACE (4) ~
d) modific tupluri
nume =REPLICATE('', 10)
e) adaug atribute n tabela TI
CLEAR
@ 5,5 SA Y 'Cod:' GET cod ~

265
264
t"'"l
L
l
39. Se d urmtoarea secventa de program. Care afirmatii sunt f
adevrate?
7 2. Modularizarca programelor presupune utilizarea comenzilor:
L a) SETMODU
DO CASE
b) FUNC ... RETU
CASE x = 1
@ 5,5 SA Y 'Eroare sintax' c) VFP nu permite modularizarea programelor
d) REPEAT .. UNTIL
CASEx=2
e) SET PROC TO
CASE x = 3
L @ 5,5 SA Y 'Valoare bun'
OTHERWISE 3. Lucrul cu ferestre utilizator presupune utilizarea comenzilor:
@ 5,5 SA Y 'Se va relua procedura' a) CREATE WINDOW

L ENDCASE b) DEFI WIND


a) realizeaz o structur ciclic c) JOIN WIND

b) este greit pentru c are CASE vid d) ACTIVATE WINDOW


L.: c) este greit pentru c nu are OTHERWISE e) BROSE WIND
d) este greit pentru c nu are READ
e) realizeaz o structur alternativ 4. Lucrul cu meniuri orizontale utilizator presupune utilizarea comenzilor:
.._. a) CREAMENU

40. Comanda@ 2,5 SAY 'OK': b) DEFI POPUP


c) CREABAR
a) este o comand de intrare standard
l.. b) este o comand de intrare oarecare d) CREA POPUP
c) DEF1 MENU
c) afieaz un text pe linia 5 pe ecran

- d) este greit pentru c nu este urmat de READ 1 ~-'

e) citete un text de pe linia 2 de pe ecran


5. Programul urmtor are ca efect:
DIMEv(4,3)
FOR i = 1 to3
~
v(l,i) =O
e) Alte tehnici de programare
ENDFOR

L 1. Legtura temporar, la momentul execuiei, ntre dou tabele se poate


realiza prin comenzile:
v(2,2) =22
STORE 23 TO v(2,3)
STORE 1 TO exemplu(2,2)
a) SET RELATION TO
CLEAR
.._, b) JOIN
DISP MEMO LIKE v
c) RELA TION BEETWEN
d) nu se poate realiza a) defmete un masiv bidimensional

- e) COPYTO b) iniializeaz prima linie din matrice cu valoarea O

266 267
L
,....
c) afieaz
toate elementele unei matrici
CASE mi= 1
d) folosete o instruciune de atribuire
GOTOP
e) ini!ializeaz prima coloan din matrice cu valoarea O .~
CASEmi=2
GOBOTTOM
6. Fie urmtorul program:
ENDCASE
USE prod 1'"-1
RETURN
LIST
Care afirmaii sunt adevrate?
CREA TRIG ON prod FOR DELETE AS codp < 22
a) este greit pentru c procedura este plasat dup apel
DELE FOR codp = 5 "
b) este greit pentru c procedura nu este apelat bine
LIST
c) este greit pentru c o structur tip CASE nu poate aprea
RECALL ALL
I..!ST
ntr-o procedur ,..,
d) este greit pentru c variabila "mi" se utilizeaz n
a se lucreaz
cu o structur repetitiv de program
procedur i nu este definit n ea
b. se definete
un declanator
e) este greit o comand GO ...,
c se terg fizic tupluri
el. se afieaz doar nregistrarea a 5 a din tabela curent
9. Se d urmtoarea secven de program:
c. se realizeaz apelul unui declanator
mk= 1 ,...
@ 5,5 SA Y 'mk:' GET
7. Cu ajutorul unui declanator se pot:
READ
a) terge date din tabele
DOpl 1""'\
b) aduga date n tabele
PROCEDURE pl
modifica date din tabele
c)
IFmk=2 "
d) crea tabele
? 'CORECT'
c) crea baze de date
ELSE

8. Se d urmtoarea secven de program:


USE prod
? 'EROARE'
ENDIF
RETURN
-
mi=O
Care afirmaii sunt adevrate?
@ 2,2 SA Y 'Valoare ntreag:' GET mi ....,
a) procedura trebuie, obligatoriu, plasat nainte de comanda
READ
de apel
DO pl
b) dup apelul procedurii este obligatorie nc o comand ,...,
? 'nregistrarea=', RECNO ()
c) este greit comanda de citire a datelor
PROCEDURE pl
d) este greit procedura
DO CASE
e) este greit revenirea din procedur ..,
268
269
."""'1
'-'
1O. Se d urmtoarea secvent de program:
ml = 10
1
!
RETU
Care afirmaii sunt adevrate?
a) procedura "pl" este greit pentru c nu are RETURN
m2=2
b) procedura "p2" este greit pentru c folosete variabila
._. DOp3
"m2'' pe care nu a definit-o
? 'TERMINAT'
c) procedura "p2'' este greit pentru c folosete variabila
PROC pl
"m3" pe care nu a definit-o
...... DOp2
d) comanda PUBLIC nu exist n VFP
mi=: m2/mi
e) secvena este un program modularizat
PROC p2
1.-J m2= ml/m2 I2. Se d urmtoarea secven de program:
PROC p3 mdn="D"
m3=22 DO WHILE mdn $ "D/d"
'-' DOpi CLEAR
m3=m3+m2 @ 2,2 PROMP 'Actualizare'
RETURN @ 3,2 PROMP 'Afiare'
Care afirmaii sunt adevrate? @ 4,2 PROMP 'Terminare'
a) procedura "pl" trebuie situat dup procedura "p3" MENUTO mi
b) structurarea comenzilor de apel se face pe mai multe niveluri DO CASE
'- c) variabila "m2" este parametru de intrare n procedura "p3" CASE mi::::: I
d) variabilele "ml" i "m3" sunt ambele parametrii de intrare DO a

- n procedura "pl"
e) este greit secvena
ENDCASE
CASE mi =3
mdn= 'N'
./

11. Se d urmtbarea secven de program: ENDDO


1....
ml =22 PROCa
DOpi Care afirmaii sunt adevrate?
?'OK' a) realizeaz un meniu orizontal
"'""' PROC pi b) realizeaz un meniu vertical
PUBLIC m2 c) este greit structura CASE pentru c nu tasteaz ml =2
m2= m1 ** 2 d) este greit procedura "a" pentru c nu are RETURN
DOp2 e) este greit secvena pentru c nu este definit variabila

-
PROCp2 "ml"
m3 =m2+m1

270
..... 271
.....
'1
li 13. Se d urmtoarea secvent de program: DEFINE BAR 2 OF popi PROMPT 'A\<CTUALIZARE'
li

" mi ='d'
DO WHILE LOWER (mi)= 'd'
DEFINE BAR 3 OF popl PROMPT 'TERMINARE'
ON SELECTION BAR I OF popi DO v
1"""'1

CLEAR ON SELECTION BAR 2 OF popi DO a


,.......
@ 2,1 T06,51 ON SELECTION BAR 3 OF pop1 DO DEAC POPUP popi
@ 3,2 PROMP 'Lista 1' MESSAGE 'Lista ACT 1 POPUP pop 1
beneficiarilor' SHOW POPUP pop 1
@ 4,2 PROMP 'Lista 2' MESSAGE 'Lista DEAC POPUP pop 1 .......
produselor' ? 'TERMINAT OK'
@ 5,2 PROMP 'Terminare' PROCv
MENUTOm2 @ 20,5 SA Y 'Vizualizare inactiv'
SET MESSAGE TO 20 PROCa
DO CASE @ 20,5 SAY 'Vizualizare inactiv'
CASE m2= 1 RETURN
CASEm2=2 Care afirmaii sunt adevrate?
CASEm2=3 a) realizeaz un meniu vertical
~

mi ='n' b) realizeaz un meniu orizontal


ENDCASE c) selectarea opiunii 1 se face tastnd litera V
ENDDO d} selectarea opiunii 2 se face tastnd litera A
Care afirmaii sunt adevrate? e) selectarea opiunii 3 se face tastnd literaT
.r
a) realizeaz un meniu vertical
b) afieaz mesaje explicative pe linia 20 pe ecran 15. Se d urmtoarea secven de program:
c) pefmite lucrul cu meniul atta timp ct dorete utilizatorul CLEAR
d) la ~electarea primelor dou opiuni din meniu nu se execut DEFINE MENU men1 BAR AT LINE 5
nici o procedur DEFINEPADpl OFmenl PROMPT 'VIZUALIZARE' Il
e) selectarea unei opiuni se poate face cu tastele sgei i apoi DEFINE PAD p2 OF men2 PROMPT 'ACTUALIZARE'
tasta ENTER DEFINE PAD p3 OF men3 PROMPT 'SFRIT'
ON SELE MENU men 1 DO s ,....,
14. Se d urmtoarea secven de program: ACTI MENU men 1
CLEAR DEAC MENU menl
DEFINE POPUP pop1 FROM 5,5 MESSAGE 'Meniu ,_
J'ROC S
principal'
DO CASE
DEFINE BAR 1 OF pop 1 PROMPT 'VIZUALIZARE' CASE PAD 0 = 'P1'
.......
CASE PAD 0 = 'P2'
272
273 ,-..

~:'\.ll
= 'P3' ~~ Care afirmaii sunt adevrate?
'-' CASE PAD ()
ENDCASE a) se afieaz un mesaj pe linia unu de pe ecran
RETU b) se afieaz un mesaj pe linia trei de pe ecran
a) structura CASE este eronat . c) se afieaz un mesaj pe linia trei din fereastr
b). trebuia o singur comand DEFINE PAD pentru toate d) se citete un mesaj pe linia unu din fereastr
opiunile meni ului e) o comand este greit
\.......
c) la o execuie a programului se poate apela o singur opiune
din meniu 18. Se d urmtoarea secven de program:
..._ d) opiunea ACT se gsete pe linia 6 pe ecran USE beni
e) meniul are trei opiuni INDEX ON denb TO b 1
CLEAR
...._ 16. Se d urmtoarea secven de program: ? ' COD * NUME BENEFICIAR'
CLEAR ? REPLICATE (' - ', 22)
DEFI WIND fi FROM 5,5 TO 15,35 TITLE 'Rsfoire' SCAN
..... SHADOW ? codb, '*', denb
ACTIWIND fl ENDSCAN
USE beni Care afirm~tii sunt adevrate?
BROW a) afieaz un cap de tabel n fiierul "bl.txt'
'-
DEACWIND fi b) afieaz codul i denumirea beneficiarilor ordonate dup cod
Care afirmaii
sunt adevrate? c) afieaz codul i denumirea beneficiarilor ordonate
a) realizeaz un meniu vertical descresctor ....--
1 -

'-'
b) realizeaz un meniu orizontal d) acceseaz toate nregistrrile tabelei curente
c) realizeaz o fereastr e) creaz un fiier de index ataat tabelei BENI
\..." d) se poate vizualiza tabela "beni"
e) la terminarea execuiei cursorul nu revine n fereastra de 19. Se d secvena de program:
comand SELE3
\..."
USEprod
17. Se d urmtoarea secven de program: INDEX ON codp TO p 1
CLEAR SELE2
DEFINE WINDOW f FROM 5,5 TO 20,99 USEcontr1
ACTIVE WINDOW f SET RELA TO codp INTO prod

- @ 1,3 SA Y 'Mesaj'
WAIT 'Apsai orice:'
DEAC WIND ALL
G05
SELE3
DISP

1.-i
274 275
22. Se d secventa de program:
Care afirmatii sunt adevrate?
SELE 1
a) se afieaz nregistrarea cinci din tabela CONTRI ~
USE prod
b) se afieaz nregistrrile cinci din tabela PROD
INDEX ON codp TO pl
c) se afieaz o inregistrare din PR_OD care are acelai "codp"
SELE2 ~
cu a cincea nregistrare din CONTRI
USE contrl
d) se afieaz o nregistrare din CONTRI care are acelai
INDEX ON codp TO el
"codp" cu a cincea nregistrare din PROD
J01N WITH prod TO conprod FOR codp = A.codp~
e) se stabilete o legtur ntre tabela principal CONTRI i
FIELDS codp, A.denp, A.ump, cantl
'"'"'
cea secundar PROD
Care afirmaii sunt adevrate?

20. Se d secvena

SELE2
de program:
a) eroare pentru c variabilele "A.denp" i "A.ump" nu sunt
definite
-
b) se realizeaz o selecie
USE beni
INDEX ON codb TO bl UNIQUE
COPY TO cb FIELDS codb, denb
c)
d)
se realizeaz o jonciune
se realizeaz o proiecie
-
e) rezult fiierul "conprod.dbr'
Care afirmaii sunt adevrate?
a) se realizeaz o proiecie din tabela BENI
b) se realizeaz o selecie din tabela BENI
f) Programarea orientat obiect
c) se realizeaz o diferen din tabela BENI
d) se realizeaz afiarea cmpurilor "codb" i "denb" din tabela
1. Se d secvena de program: DEFINE CLASS Cl AS Vl
BENI nume=" " __.;' J

e) se utilizeaz un operator relaional ,.....,


PROCEDURE pl
?THIS.nume
21. Se d secvena de program:
ENDPROC
SELE3 ,......
ENDDEFINE
SELE * FROM prod INTO DBF cp WHERE (codp>20 AND
Care afirmaii sunt adevrate?
codp<SO)
a) se definete clasa "Vl"
Care afirmaii sunt adevrate?
b) se codific clasa "Cl"
a) se realizeaz o selecie din tabela "prod"
c) se definete o metod
b) se realizeaz o selecie din tabela 3
c) se realizeaz o proiecie din tabela "prod"
d} se definete procedura "THIS" ,...,
e) se descrie o proprietate
d) o comand este greit
e) trebuia obligatoriu deschis tabela ''prod"
~

277
276
'"""
'-'
..i
'-'

1.....
2. Se d secvena de program: 8I

Care afirmaii sunt adevrate? .


=CREATEOBJECT ("CI")
81. nume= "Maria"
? 81. nume
Se consider definite anterior toate elementele necesare.
' Care afirmaii sunt
a)
b)
c)
adevrate?
ENDDEFINE

toate proprietile definite pot fi referite din afara clasei


toate metodele definite pot fi referite din afara clasei
se protejeaz trei proprieti
a) se instaniaz un obiect dintr-o clas d) se protejeaz o singur proprietate
L b) se creaz clasa de obiecte "Cl" e) se protejeaz o singur metod
c) se definete o variabil de memorie de tip obiect
d) se refer o metod 5. Se d secvena de program: o l =CREATEOBJECT ("C")
e) se refer o proprietate mloc = o l.loc
ol.P ()
&&STOP
3. Se d secvena de program: DEFINE CLASS C2 AS CI
Care afirmaii sunt adevrate?
'-- Str=""
a) se transmit mesaje ctre un obiect
PROCEDURE 82
b) se apeleaz comanda "STOP"
CI:: pl
c) se definete o proprietate
WAIT WINDOW "STOP"
d) se creaz o clas de obiecte
ENDPROC
e) se apeleaz o metod
ENDDEFINE
L.. Se consider definite anterior toate elementele necesare.
6. n Visual FoxPro clasele de baz (standard) sunt:
Care afirmaii sunt adevrate?
a) utilizator
a) de definesc dou clase: "Cl" i "C2" /
...... b) vizuale -
b) se apeleaz procedura "p2"
c) metode
c) se ~efinete o subclas
d) nonvizuale
.__. d) se apeleaz o m~tod
e) funcii
e) se definesc dou proprieti

4. Se d secvena de program: DEFINE CLASS C AS CI 7. Se d secvena de program: DEFINE CLASS CI AS from


'-'
PROTECTloc left = 22
loc="" top =22
str="" height = 200
...._
tiploc =0 width = 240
PROCEDURE PROTECT p =
caption "Rsfoire"

- ? THIS.Ioc
ENDPROC
PROCEDURE sf

278 279
'-'
~.

CLEAR EVENTS d) definirea domeniului pentru atribute


ENDPROC e) definirea tipului pentru atribut ,....
ENDDEFINE
Care afirmatii sunt adevrate? 4. Comanda:
a) se definete clas pe nume.le ''from"
b) se definete o subclas utilizator
SELECT Iocb, avg(cantl) FROM caddid GROUP BY locb HA VING
avg(cantl)> 100
-
c) se utilizeaz o superclas de baz (standard) a) folosete o funcie de agregat
d) se realizeaz o rsfoire a bazei de date b) folosete doi operatori ~

e) se indic, prin proprieti, dimensiunea unei ferestre c) grupeaz tuplurile provenite din tabela Iocb
d) regsete date diritr-o tabel'
e) afieaz trei coloane ........
g) Programarea n SQL
5. Comanda
1. Comanda: SELECT p.denp, c.cantl FROM prod p, contr c WHERE c.codp=p.codp
1'""'1

SELECT denp+ump produse FROM prod simuleaz opearorii relaionali:


a) folosete o funcie a) reuniunea
1"'-\
b) folosete o etichet b) jonciunea
c) folosete un operator c) selecia
d) are o clauz d) concatenarea
e) realizeaz o actualizare e) intersecia

2. Comanda: 6. Comanda urmtoare este eronat pentru c:


SELECT MAX(denp), COUNT(*) contor FROM prod WHERE SELECT * FROM contr c WHERE 2 = (SELECT codp FROM produs
ump='buc' ' p)
1 1

a) folosete o funcie a) are referirea * ,.......


b) este eronat pentru c MAX nu se aplic pe caractere b) are referirea produs p
c) afieaz dou coloane c) are clauza WHERE n loc de FOR
d) afieaz trei coloane d) are subcerere .....,
e) regsete tupluri din tabela contor e) nu are nicio funcie

3. Comanda CREATE TABLE permite: t""-1


a) ncrcarea datelor ntr-o tabel
b) actualizarea structuri de date a unei tabele
c) definirea restriciilor de integritate ....,

280 281
-..
L_.

7. Comanda unntoare: RSPUNSURI


1..1 '
INSERT INTO prod SETcodp = 22 WHERE denp ='ecran'
a) Descrierea datelor
a) adaug un tuplu ntre dou existente
1: a, e; 2: e; 3: b, c; 4: a, b, c, d; 5: e; 6: b; 7: c; 8: b, d; 9: a, c, d;
b) este greit pentru c are clauza SET
'-- 10: a; ll: nici un rspuns corect; 12: a, b, e; 13: b, d; 14: a, b, c, d, e;
c) este greit pentru c. are clauza INTO
15: a, c, d; 16: b, c, d; 17: a; 18: a, b, d.
d) adaug un tuplu n tabela codp
........ e) este greit pentru c are clau1..a WHERE b) ~ccesulla date
1: b, c, d, e; 2: e; 3: a, b; 4: a, b; 5: d, e; 6: d, e; 7: b; 8:c; 9: a, b,
8. Comanda: c,d;'
...... DELE ALL FROM prod 10: a, b, c; li: c; 12: a, b, c, d; }j; c; 14: a, b, c; 15: a,b; 16: a, b, c,
a) terge toate tuplurile din tabela prod d, e; 17: d; 18: c; 19: a; 20: e; 21: e; 22: a, e; 23: c; 24: d, e; 25:
b) este eronat pentru c are clauza ALL e; 26: a, b, d; 27: nici un rspuns corect; 28: c, e; 29: b; 30: b, c, d;
'-- c) este o comand de actualizare 31: b, c; 32: b, c, d; 33: a, b.
d) este eronat pentru c nu exist comanda DELE
e) este eronat pentru c nu trebuie indicat numele tabelei c) Actualizarea datelor
_, 1: a, b, c, e; 2: a; 3:b, c; 4: a; 5: a, b; 6: a, c, d, e; 7: b, e; 8: a, b; 9:
9. Comanda: a; 10: a, b; Jl: a, b, c, d, e; 12: a; 13: a, e; 14: b, c; 15: d, e; 16: b;
UPDATE contr SET cantl = 200 WHERE codp = 22 17: a, b, d; 18: e.
"-' a) modific toate tuplurile dintr-o tabel
d) Structuri de program
b) actualizeaz toate atributele dintr-o tabel
1: b; 2: a; 3: a; 4: b; 5: a; 6: c, d, e; 7: d; 8: a, g, d; 9: c, e; 10:
c) modific doar anumite tupluri din tabel
....... nici una;
d) actualizeaz tabela cantl
ll: d; 12: b; 13: d; 14: a; 15: nici un rspuns corect; /6: .c; 17: c;
e) actualizeaz un singur atribut din tabel
18: e; 19: nici un rspuns corect; 20: c, e; 21: d; 22: d; 23: a; 24: b:
1
25: c; 26: a; 27: b, c;
1O. Secvena de comenzi are ca rezultat:
28: e; 29: b; 30: d; 31: a; 32: b, e; 33: d; 34: a; 35: e; 36: a; 37:.
CREATE VIEW vl AS SELECT denp FROM prod WHERE ump =
c; 38: c;
._. 'buc'
39: e; 40: nici un rspuns corect.
USEvl
LIST e) Tehnici de programare
........ a) definirea unei tabele virtuale 1: a, b; 2: b, e; 3: b, d; 4: a, e; 5: a, b, c, d; 6: b, e; 7: a, b, c; 8: nici
b) lucrul cu o viziune un r~puns corect; 9: c; 10:b,c; Jl:e; 12:b; 13:a,b,c,d,e; 14: a;
c) afiarea datelor din tabela prod 15: c, e; 16: c, d;
1.-J d) afiarea datelor dintr-o tabel virtual J7:niciunrspunscorect; 18:d,e; 19:c,e; 20:a,e; 21:a; 22:c,e.
e) deschiderea unei tabele virtuale

282 283
,...,
f) Programarea orientat obiect 2. S
se creeze BD de desfacere - DESF, cu tabelele PROD, BENI,
1: b. c, e; 2: a, c, e; 3: c; d; 4: d, e; 5: a, e; 6: b, d; 7: b, c, e. CONTR conform structurii din Introducere. S se afieze dup fiecare
~
creare de tabel structura.
g) Programarea n SQL CREATE DATABASE desf
J:b,c,d; 2:a,c; J:c,d,e; 4:a,d; s:b,c; 6:d; 7:b,e; B:b,c; 9: CREATEprod ~.

c . e ; 10: a, b, d, e DISPSTRU
CREATEbeni
DISPSTRU
Probleme CREATE contr
DISPSTRU
Problemele prezentate acoper majoritatea facilitilor oferite de limbajul de ,.-.,

programare din VFP, inclusiv extensiile sale, similar cu cele dup care au 3. S se actualizeze structura de date a tabelei PROD n sensul adugrii
fost grupate testele de mai sus: unui cmp nou denumit VACS ca ir de caractere, de lungime 5.
a) descrierea datelor; USE prod ,......
b) accesul Ia date; MODISTRU
c) actualizarea datelor; DISPSTRU
d) stmcturile de program; .-.,

e) alte tehnici de programare;


!) programarea orientat obiect; b) Accesul la date
g) programarea n SQL
1. S se indexeze tabela BENI dup o cheie format din dgu cmpuri: codb
i denb. Nu se admit valori multiple pentru cheie. ___ ,. .. .
a) Descrierea datelor
USE beni
l . Pomind de 1~ tabela de contracte - CONTR s se scrie programul care LIST
1

creeaz o nou tabel CON 1 cu aceeai structur. Aceasta care va contine INDEX ON STR(codb,4)+denb TO il UNIQUE
contractele ce vor avea termenul de livrare n luna februarie a anului LIST ""'"'
curent.
CLOSEALL
USE contr
2. S
se afieze din tabela CONTR cantitile pentru contractele al cror
termen de livrare este anul curent. -
COPY STRU TO conl USE contr
USE conl LIST cantl FOR YEAR(termeni)=YEAR (DATE()) ANO; ,...,
APPE FROM contr FOR MONTH(termenl)==2 ANO YEAR(termenl)==YEAR(DATE())
YEAR(tcrmenl)=YEAR(DATEO)
.-.,

284 285
!""'\

Potrebbero piacerti anche