Documente Academic
Documente Profesional
Documente Cultură
r
r
1
-\,.-
În VFP: sunt puţine instrumente oferite administratorului BD faţă de ceea ce
ar trebui să ofere un SGBD. Astfel, există asistenţii Database Designer şi
Table Designer care oferă elemente de proiectare asistată; se poate lucra
Note bibliografice
Noţiunea de sistem de bază de date (SBD) este tratată atât în materialele llldl
vechi (în ţara noastră sub denumirea de bancă de date) cât şi în cele mai noi.
Conceptul este prezentat fie doar în contextul elementelor sale componente
opţional cu noţiunea explicită de bază de date şi deci cu dicţionarul BD prin
[CONNOO], [DATE04], fie ca noţiune şi apoi pe componente [VELU03).
comanda .CREA TE DAT ABASE, care produce fişierul tip DBC
SBD avansate sunt prezentate pe larg, teoretic (concepte, arhitecturi,
.._ corespunzător dicţionarului BD; există câteva comenzi SET pentru
interacţiuni) şi practic (exemple, studii <le caz, aplicaţii), în mai multe
schimbarea unor parametri. Toate acestea nu sunt însă doar la dispoziţia
lucrări: [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 strânsă legătură cu Pentru o bună documentare în ceea ce priveşte actvitatea de administrare a
noţiunea de aplicaţie inf01matică. unei baze de date, cititorul poate consulta [LUVE021.
Sistemul de bază de date (DataBase System) este un ansamblu de elemente
intercondiţionate care contribuie la realizarea şi exploatarea unei aplicaţii 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 evidenţiază 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 legăturile între diversele elemente. Sunt trei niveluri de administrator'baze d~ date
organizare a datelor în baze de date: conceptual, logic, fizic. Fiecărui nivel îi SBD avansate
corespunde, respectiv, un punct de vedere: administratorul BD,
programatorul de aplicaţie, analistul de sistem. Fiecare dintre aceştia 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 deţinută de cele
~..,.
~ 27
26
2. Componenta de date dintr-un SBD poate conţine: 7. Într-o arhitectură de sistem de bază de date, Visual Foxpro face parte din
a) sistemul de operare componenta: :-)
28 29 ,...-,
1ihl' 12. Structura externă a unei baze de date este de competenta (punctul de
vedere): Răspunsuri 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 aplicaţie
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 reţea
e) SGBD-ului
Probleme
13. Componenta de date dintr-un SBD poate conţine:
1
L._, a) programele de aplicaţie J) Din activitatea de cercetare-dezvoltare a unei firme să se identifice o
b) dicţionarul BD subactivitate pentru care se poate construi un SBD în VFP.
c) programele utilizator 2) Din activitatea de producţie a unei firme să se identifice o
i.... d) dicţionarul de programe subactivitatc pentru care se poate construi un SBD în VFP.
e) fişiere 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ă independenţa 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) defineşte dicţionarul 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ă protecţia datelor 6) Să se identifice în VFP componentele care asigură functiile unui
e) întreţine BD
SGBD.
.-'
1.......
15. Instrumente la dispoziţia 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
~ 30
{ ,' ··;,,::;;;',;· :,',':;' 1" ,~J
··.:~. "..;"
..... 3J
•'-;~~--~- ..:: .. :./
·~1 i1
'~l
.-.
În orice calculator datele sunt stocate atât în memoria in temă (temporar) cât
şi în memoria externă (persistent).
Bazele de date - BD, ca mod de organizare a datelor în memoria externă, au
evoluat din fişiere printr-un proces de integrare a lor (fişierele şi legăturile
dintre ele) şi ţinând cont de cerinţele aplicaţiilor informatice.
-
l'"j
2.1. Definirea BD Elementele componente ale unei baze de date
Deoarece bazele de date au evoluat din fişiere, o serie de noţiuni 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. Evoluţia organizării datelor '1
aşa cum reiese din tabelul de mai jos. De remarcat faptul că atât fişierele cât
2.2.2. Organizarea datelor în fişiere şi bazele de date se construiesc pornind de la lumea reală înconjurătoare .
2.3. Modelele logice de structurare a datelor în baze de date Citirea tabelului se va face de la stânga la dreapta. iar noţiunile
2.4. Consideraţii privind protecţia bazelor de date corespunzătoare de pe cele două rânduri pot fi considerate similare.
~
Rezumat Astfel vom spune: o bază de date este fmmată din mai multe colecţii de
Note bibliografice date. Fiecare dintre acestea are ataşată o famili~.de caracteristici, care. esţe
Cuvinte-cheie formată din mai multe caracteristici, care iau valori dintr-un domeniu de .....
Teste-grilă şi probleme valori.
În mod similar se citeşte rândul de jos: un sistem de fişiere este foqnat din
mai multe fişiere. Fiecare dintre acestea are ataşată o înregistrare logică -
articol, care este formată din mai multe câmpuri, care iau valori.
33
,.....,
~ -·1
r1 '•·
L-' Ca orice SGBD relaţional, VFP este un sistem tranzacţional, dar nu sunt Rezumat
respectate toate caracteristicile tranzacţiilor.
Salvarea şi restaurarea BD nu este făcută automat ci doar explicit de către Capitolul începe cu definirea conceptului de BD şi a noţiunilor aferente.
L.. administratorul BD. Pentru noţiunea de BD este dată o definire originală, completă: un ansamblu
de colecţii de date în memoria externă cu următoarele caracteristici:
SECURITATEA datelor este asigurată prin măsurile care se iau de către organizat, pe trei niveluri - conceptual, logic, fizic;
proiectantul BD, dar şi de către benefidar, pentru protejarea datelor stocare structurat, conform unui model de date pentru 130 - ierarhic, reţea,
împotriva unor incidente - evenimente voite, dar şi a unor accidente - relaţional, orientat obiect;
evenimente nevoite.
coerent, prin restricţiile de integritate şi protecţia datelor;
1. Autorizarea şi controlul accesului la date constă în identificarea
1...... cu o redundanţă minimă şi controlată, prin implementarea unui model
utilizatorilor şi restricţionarea accesului acestora, pentru diferite de date şi prin aplicarea unei tehnici de proiectare;
1 operaţii de prelucrare.
1 accesibil mai multor utilizatori în timp util, adică informaţiile din BD
L- 2. Viziunile/vederile/tabele virtuale- views- sunt partiţii logice ale BD pol fi folosite de către mai mulţi utilizatori atunci când e nevoie de
definite pentru diferiţi utilizatori.
, acestea.
3. Procedurile .1peciale sunt rutine, oferite de SGBD, care efectuează
1 Se dă un exemplu de BD relaţională pe care se exemplifică definiţia noţiunii
~ anumite operaţii asupra datelor şi care sunt accesibile anumitori deBD.
utilizatori.
, După ce s-a definit noţiunea de organizare a datelor, s-a prezentat evoluţia
4. Criptarea este operaţia de codificare a datelor în vederea stocării sau
acesteia pentru memoria externă, pornind de la fişiere - primul mod de
"- transmiterii datelor. În acest sena, se folosesc o mulţime de tehnici organizare a datelor în memoria externă şi ajungându-se la ultimele tipuri de
specifice: parole, algoritmi de criptare/decriptare, rutine speciale etc. baze de date, cele orientate obiect. In această evoluţie, s-au urmărit câleva
În VFP. Se poate lucra cu tabele libere- free table (rezultă fişiere tip DBF), aspecte - caracteristici comparative: structura de datt;,.- mod':!l de prelucrare a
"'-' caz în care securitatea datelor este scăzută. Se poate lucra şi cu noţiunea de datelor, redundanţa datelor, software-ul utilizat. ·-"
bază de date prin comanda CREATE DATABASE (rezultă fişier tip DBC), Pentru a se fundamenta necesitatea organizării datelor in memoria externă,
caz în care securitatea datelor creşte.
1....
comparativ cu memoria internă, s-a prezentat un tabel în care se găsesc 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 defineşte noţiunea de fişier şi, acesteia, i se prezintă câteva
Pentru administratorul BD VFP oferă puţine instrumente pentru întreţinerea
..... dintre cele mai importante aspecte de organizare a datelor: operaţii,
BD. Majoritatea operaţiilor administratorul BD le va efectua prin proceduri structura, modul de organizare, modul de acces.
proprii.
O parte consistentă din capitol este destinată organizării datelor în baze de
Criptarea nu este asigurată automat de VFP.
\"_. date conform unor modele de date.
Mai întâi sunt prezentate principalei noţiuni necesare: informaţia, 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
,_,
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 oricâţi superiori
c) există noţiunea de tip arbore
c) un nod poate avea oricâţi subordonaţi
d) există noţiunea de domeniu de stări
d) există noţiunea de tip set
e) un nod copil poate avea mai mulţi părinţi e) se pot reprezenta numai legături 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 fişiere
d) coerent, modular
d) un SGBD reţea
e) distribuit uniform
e) un SGBD orientat vizualizat
L.
7. La evoluţia organizării datelor în memoria externă se au în vedere 12. În modelul relaţional pentru baze de date:
aspectele:
a) există noţiunea de tip înregistrare
a) modul de organizare a aplicatiei b) atributele care au rol în realizarea legăturilor între tabele se numesc
!.....
b) structurile de program
chei compuse
c) procedurile de calcul
c) legăturile între tabele se descriu în LMD
d) transmisia datelor d) există noţiunea de schema tabelei
!.....
e) redundanţa programelor
e) proiectia, negaţia şi existenţa sunt operatori din algebra relatională
8. Componenta de date dintr-un SBD poate conţine: 13. În modelul reţea pentru baze de date:
a) sistemul de operare
~
a) există noţiunile de nod proprietar şi nod membrti
b) sistemul de coduri
b) există operatori de actualizare într-un set
c) dicţionarul distribuit
c) există operatorul de localizare a unui arbore
d) fişierele anexe
L... d) o înregistrare nu poate fi membră a două realizări ale aceluiaşi tip set
e) fişiere tip DOC
e) actualizarea datelor este greoaie
9. Ansamblul de concepte şi instrumente pentru a realiza schema 14. Modul de dispunere a înregistrărilor, conform unor reguli, reprezintă
L conceptuală a datelor reprezintă:
pentru un fişier:
a) structura de date fizice
a) modul de acces
b) structura programelor
b) modul de regăsire
._ 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 fişiere se au în vedere următoarele
a) definirea obiectelor se face prin clase de obiecte caracteristici: ...,
b) se admit legături 1:1, I:M, M:N a) limbajul de programare
c) există secven{e ierarhice de realizări b) actualizarea datelor
d) există operatorul de actualizare într-un arbore c) tipul şi frecvenţa operaţiilor pe înregistrări ...,
t:) o realizare copil este întotdeauna asociată unei singure realizări d) volumul de date
părinte
e) dimensiunea hard discului
...,
16. Visual Foxpro con{ine: 21. La organizarea datelor în memoria externă, noţiuni corespunzătoare
a) un limbaj procedural sunt:
b) un limbaj descriptiv a) fişier - familia de caracteristici ...,
c) un limbaj de descriere a datelor b) fişier- valoare
d) un limbaj de manipulare a datelor c) înregistrare- caracteristică
c) un limbaj utilizator distribuit d) înregistrare- domeniu de valori
e) câmp- colecţie de date
...,
17. În modelul orientat obiect pentru baze de date:
a) obiectul are identificator, proprietăţi
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 cţia de integritate: orice clasă respectă regulile impuse
obiectului din care face parte d) schema internă
e) structura funcţională
c) Ia baza operaţiilor (operatorilor) stau metodele •..
~
-·· ...,
18. La organizarea datelor în fişiere, nivelurile de referinţă sunt: 23. În modelul relaţional pentru baze de date:
a) global a) reuniunea şi proiecţia sunt operatori din calculul relaţional
b) conceptual b) într-o tabelă nu trebuie să existe două tupluri cu aceeaşi valo<ţre
c) logic pentru ansamblul cheie compusă
d) de ansamblu c) cheia formată din mai multe atribute se numeşte cheie primară l
c) fizic d) implementarea modelului se face la nivel logic
e) definirea datelor se face prin tablouri bidimensionale numite relaţii
19. În modelul reţea pentru baze de date:
a) există un singur tip înregistrare rădăcină 24. Baza de date este un ansamblu de date:
b) la un subordonat se poate ajunge pe mai multe căi a) condus, coerent ,._
c) există operatori de localizare a unei înregistrări pe baza valorii unui b) accesibil mai multor utilizatori în timp util
câmp
c) structurat, cu o redundanţă minimă şi controlată
d) o înregistrare poate să aparţină mai multor tipuri set d) organizat, coerent
c) implementarea modelului se face logic ,._
e) administrat, programat
72
73 ...,
'-
l!'
25. Structura unui fişier 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 fişierului index
b) coleclia de caracteristici de grup
c) colecfia de date ·
d) partea de date d) familia de caracteristici
~ e) partea de comunicaţie e) colecfia de baze de date
r
'
.....
26. Modul/ metoda de acces la un fişier poate ti: 31. Elementele 1 componentele oricărui model de date pentru baze de date
a) indexat-secvenţial sunt:
b) nedefinit a) definirea entităţi lor 1 obiectelor
L-
c) dinamic b) operatorii care acţionează asupra structurii de date
d) structurat c) operatorii aritmerici
e) standard d) definirea legăturilor dintre entităţi 1 asocierile
L-
e) regulile lui Codd
27. Elementele /componentele oricărui model de date pentm baze de date
" sunt:
1 modelul relaţional 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 comunicaţie c)domeniul este un subansamblu al produsului cartezian al mai multor
d) definirea procedurilor de calcul tabele
"'"" e) definirea obiectelor 1 entităţilor d) potenţial, orice tabelă se poate lega cu orice tabelă
e) cuantificatorii sunt operatori orientaţi pe do!Jleniu, din calculul
L- 28. După modelul de date implementat, bazele de date sunt: relaţional _./ ·.
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 căi
b) un nod părinte poate avea mai multe noduri copil 34. În modelul orientat obiect pentru baze de date:
L.,. c) legătura părinte- copil poate fi 1:1, 1:M a) comportamentul obiectului se indică prin metode
d) numărul de ierarhii posibile creşte combinatorial cu numărul b) mesajele sunt cereri de regăsire
înregistrări lor c) un obiect nu îşi poate deriva datele şi funcţionalitatea din alt obiect
w e) există operatorul de localizare a unui arbore d) proprietăţile 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ă restricţia 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 proprietăţilor
d) există operaton1l privind actualizarea claselor
c) dacă un tip de înregistrare nu are realizări atunci nici tipurile de
înregistrare descendente nu au realizări
d) există operatorul de localizare a unui arbore
-
e) diferite obiecte pot răspunde diferit la aceleaşi 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 entităţi lor a) colecţia de proprietăţi ~
76 77 ~
~
r
1
1....1 44. Protecţia BD, sub aspectul securităţii datelor, se referă la: Probleme
a) criptarea
b) controlul concurenţei 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
Răspunsuri
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
~
,...,
apartenenţei sale la categoria de SGBD relaţional. • costul consultanţei tehnice privind decizia de a se realiza o BD şi
L..
apoi privind modalitatea ei de realizare.
2. Evaluarea costurilor de funcţionare a BD:
3.4. Aspecte privind eficienţa bazelor de date
• costul de punere în funcţiune care include testele şi implementarea
"- BD la parametrii proiectaţi;
Realizarea unei aplicaţii cu BD implică un mare consum de resurse, pe o
perioadă îndelungată, datorită complexităţii unei astfel de activităţi. De • costul de exploatare curentă a BD de către beneficiar cu asisten!ă
aceea, un astfel de efort nu poate fi făcut 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 întreţinere şi dezvoltare a BD de către proiectant în
ales pentru aplicaţiile mari şi complexe, acolo unde alte produse informatice colaborare cu beneficiarul. Dezvoltarea trebuie să poată fi făcută cu
nu fac faţă. un efort dU mai mic şi fără a se întrerupe funcţionarea BD.
L Efectele realizării şi utilizării BD rezultă, în mare parte, din avantajele 3. Calcule de rentabilitate privind întregul proces de realizare şi
oferite de o astfel de soluţie informatică: funcţionare a BD presupune:
elimină redundanţele necontrolate prin modul de organizare; • utilizarea unor metode specifice activităţii de rc;:,alizare a calculelor
L creşte productivitatea activităţii informatice prin aplicarea unor tehnici de rentabilitate privind BD. Un exemplu de e·astfel de metodă este
de proiectare; Analiza Cost-Beneficiu.
r oferă suport informa~onal optim pentru conducere şi execuţie prin sursa • utilizarea unor produse software, dar pot fi şi hardware, specializate
L de informaţii pe care o oferă; pentru realizarea şi exploatarea BD. Acestea, prin facilităţile de
permite interogarea datelor de către toate categoriile de utilizatori prin produse dedicate pe care le oferă cresc performanţa, dar pot scădea
r
facilităţile de utilizare oferite de SGBD; portabilitatea BD. De exemplu o BD de regăsire documentară
conduce spre aplicaţii deschise prin numeroasele tehnologii informatice realizată şi exploatată cu un SGBD dedicat are performanţe de
'-'
care sunt integrate cu tehnologia bazelor de date într-un SBD evoluat. interogare remarcabile dar portabilitatea este redusă.
Efortul depus pentru realizarea şi întreţinerea unei BD este considerabil şi
Rezumat
..._ de aceea investiţia 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 investiţiei pentru o aplicaţie 'cu BD se face prin studiul de
adecvată.
fezabilitate (analiza preliminară) care va conţine 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 întreţinere.
activităţi - intrările, memorarea datelor, protecţia datelor, legăturile datelor -
i...l 98 99
i.·.
?;:!; .....
~-~ ...
;.·
astfel încât să se poată decide dacă merită sau nu demararea acţiunii 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
câteva dintre obiectivele importante ale acestei activităţi: partiţionarea,
deschiderea, eficienţa, reutilizarea, regăsirea, accesul, modularizarea, a) analizei funcţionale
protecţia, redundan1a. independenţa.
b) proiectării dinamice ~
În continuare, pentru realizarea bazei de date, se poate urma o metodologie c) analizei structurale
anume sau se pot parcurge etapele 1 activităţile prezentate: analiza de d) analizei dinamice
sistem, proiectarea noului sistem, realizarea componentelor logice, punerea e) proiectării logice 'î
în funcţiune, dezvoltarea. 2. La organizarea unei baze de date se urmăresc aspectele:
Atât pe parcursul realizării unei baze de date cât şi după aceea la exploatarea a) organizarea intrărilor de date
ei, trebuie avută în vedere eficienţa acestei activităţi. Acest lucru este b) organizarea ieşirilor de date n
important pentru că investiţia pentru realizarea unei baze de date este mare c) organizarea memorării datelor
şi ea se recuperează în timp îndelungat. Eficienţa bazei de date va avea în
d) organizarea prelucrărilor finale
vedere câteva aspecte: studiul costurilor iniţiale, evaluarea costurilor de e) organizarea programelor
,...,
funcţionare, calcule de rentabilitate.
3. Eficienţa 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 iniţiale
în special, în cărţi care abordează aspectele teoretice ale acestui domeniu al c) calcule de rentabilitate
informaticii [VELI05],[VELU03], [CONNOO], [DATE04], [DATE06]. d) calcule relaţionale
Metodologii de realizare a bazelor de date sunt prezentate în cărţi care e) algebra relaţională
îmbină aspectele teoretice cu soluţii 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: experienţa autorilor în domeniul realizării aplicaţiilor informatice, face prin: ~
precum şi sursele bibliografice [RAGEOO] , [RICCOl], unde sunt prezente a) proiectarea schemei externe
activităţi ş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 funcţională 5. Obiective urmărite în realizarea unei BD sunt:
...,1
analiza dinamică proiectarea bazei de date a) aceleaşi date nu pot fi utilizate în moduri diferite
schemele bazei de date eficienţa bazei de date b) creşterea preţului de cost pentru memorarea datelor
c) cererile de regăsire trebuie să fie doar prestabilite
d) aplicaţiile cu baze de date trebuie să poată reutiliza un fond de date
existent deja
e) redundanţa minimă dar necontrolată
-
-
IDO 101
'-
~~r
1....1
6. Aplicaţiile cu baze de date pentru domeniul economic se deduc, în ,tt ]lăspunsuri
mare parte, din funcţiile î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) producţie
e) organizare
._.
Probleme
7. Tipurile de utilizatori pentru baze de date sunt:
a) întreprinderi mici şi mijlocii 1. Pornind de la funcţiile întreprinderii să se aleagă o acti viwte pentru
b) agregaţi
'-" 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 situaţiei
8. În metodologia de realizare a unei BD etapa de proiectare conţine:
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ă, funcţională, dinamică.
c) alegerea entităţilor din lumea reală
d) proiectarea dinamică
5. Să se aleagă un SGBD pentru realizarea BD, identificând 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ă.
desfăşoară sub aspectele: 7. Pornind de la schema conceptuală a BD alese să se..scrie în limbajul
'-- a) informaţional static din VFP şi/sau în SQL: '
b) structural crearea bazei de date;
c) modular crearea structurii de date, inclusiv restricţiile de integritate;
1.....1 d) obiectual actualizarea structurii de date;
e) funcţional încărcarea datelor în tabele;
actualizarea datelor în cele trei moduri: adăugare, 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: secvenţial, direct după
a) cerinţele legislative cheie, direct după număr de realizare.
b) cerinţele aplicaţiei 8. Pentru BD aleasă să se facă un calcul de eficienţă.
1.--
c) facilităţile tehnice SGBD
d) limbajele de programare universale
e) limitele utilizatorilor
.....
4
-.
BAZE DEDATE
RELAŢIONALE (BDR)
,._
4.2. Tehnica normalizării Bazele de date relaţionale - BDR utilizează modelul de date relaţional şi
noţiunile aferente (vezi cap.2) şi fac parte din generaţia a II a de baze de
-
4.3. Calculul relaţional. Algebra relaţională
Rezumat date.
Note bibliografice BDR au o solidă fundamentare teoretică, în special prin cercetările de la
Cuvinte-cheie ffiM conduse de E. F. Codd, care a dezvoltat teoria relaţională. 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 aplicaţiilor cu
baze de date relaţionale petfonnante.
BDR este un ansamblu organizat de tabele 1 relaţii împreună cu legăturile
dintre ele.
.J
105
~
.._
1
r
......
În VFP: nu se foloseşte niciun limbaj bazat pe algebra relational. Elemente
de algebră relaţională se regăsesc atât în limbajul procedural propriu cât şi
;\t: Se bazează pe transfonnarea (mapping) unui atribut sau grup de atribute
într-un atribut dorit prin intermediul unor relaţii. Altfel spus, se poate
r în nucleul extins de SQL, prin construcţia unor expresii relaţionale cu transforma oricând o expresie din algebra relaţională în alta din calculul
operanzi tabele, iar operatorii relaţionali pot fi proiecţia, selecţia, jonctiunea. relaţional şi invers, echivalentă ca funcţionalitate (vezi în cartea [YELUOO]).
~
Astfel, în li~bajul din VFP există instrucţiunile COPY TO pentru proiecţie SGBDR realizează această transformare pentru optimizarea regăsirii.
r şi JOIN pentru joncţiune. În nucleul extins SQL există comanda SELECT Rezultatul este o relaţie 1 tabelă care se poate utiliza într-o altă 1ransformarc
..... care are clauzele FIELDS cu DISTINCT pentru proiecţia, WHERE pentru relaponală.
selecţie,FROM din două tabele combinat cu WHERE pentru joncţiune. În VFP: se îmbină elemente de calcul relaţional şi algebră relaţională, aşa
Exemplu. Pornind de la tabela BENI să se aplice operatorul relaţional de cum arătam mai sus. Orice expresie din algebra relaţională poate fi
'--' proiecţie astfel: în tabela bl rezultată se vor găsi două atribute - locbb şi transformată oricând intr-una echivalentă în calculul relaţional şi invers.
denb. VFP conţine un nucleu extins de limbaj relaţional bazat pe transformare şi
anume SQL. Acesta face transformarea automat.
....... în limbajul din VFP: Pentru expresiile relaţionale scrise în limbajul din YFP, acesta nu face
USE beni automat transformările relaţionale .
INDEX ON denb+locb TO fis 1 UNIQUE
....... COPY TO bl FIELDS denb, locb Grafica relaţională
- BENI.dbf
codb
1
2
denb
ibm
scop
locb
Bucuresti
Bucuresti
sirb
Eminescu
operei
telb
0722123456
0721123456
p~ J
,. ··o:.
~·:~
~({_
Realizarea unei aplicafii cu BDR este o activitate complexă, care presupune dependenţe funcţionale calculul relaţional
expresia relaţională 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 relaţională
normalizare este de a elimina, în procesul de proiectare a BD, anomaliile de operatorii relationali limbaje relaţionale
......,
actualiz.are. transformarea relaţională grafica relaţională
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ă
~
L
r
.............. _---- ......... - trui tabela T2· 1. O bază de date este în FN l dacă:
L NUMESTUD
", _____ ---------
NOTA a) are cel puţin 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ă
aplicând operatorul relaţional de:
e) are o tabelă nenormalizată
a) selecţie
L...o
b) joncţiune 8. O tabelăeste în FN 1 dacă:
c) cuantificatorul existenţial
a) există atribute la nivel de grup
d) proiecţia
....... b) există atribute repetitive
e) intersecţia
c) nu există atribute la nivel de grup
d) există atribute decompozabile
4. La proiectarea BDR prin tehnica normalizării:
..... e) nu există atribute repetitive
a) se înlătură anomalii de actualizare doar dacă se ajunge până în FN3
9. Concepte similare între BDR şi fişiere sunt:
b) se înlătură anomalii de actualizare doar dacă se ajunge până în FN4
a) tabelă- câmp
c) se înlătură anomalii de actualizare doar dacă se ajunge până în FN5
1.- b) tabelă- fişier
d) se înlătură anomalia de ştergere
c) atribut- domeniu
e) se înlătură doar anomalia de modificare d) atribut- fişier
- 5. O tabelă este în FN2 dacă:
e) tuplu -fişier
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 câmp denumit ibanb şir de caractere, de lungime 24; ...,
se modifică atributul denb astfel încât să fie de lungime 20 de caractere;
se ~terge coloana te/b.
2. Să se realizeze pe tabela BENI acces secvenţial pentru afişarea
beneficiarului care are codul 22 şi apoi acces direct pentru afişarea
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, ataşându-se cel puţin două restricţii de
integritate; .......
128
129 .....,
·-
1
...... 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) independenţa datelor faţă de programe este parţială PROCEDURE sfârăit
el) se tratează în mod unitar datele, programele şi comunicaţia CLEAR EVENTS ....,
c) asigură comunicaţia atât între date cât şi între programe ENDDEFINE
DEFINE CLASS cmesaj AS CommandButton
9. Dezvoltarea BDOO a fost favorizată de următoarele aspecte: left =20
a) evoluţia limbajelor de programare procedurale top 100=
b) apariţia limbajelor de asamblare height= 30
c) apariţia datelor de tip text width =50
d) apariţia sistemelor relaţionale caption =''MESAJ"
c) apariţia 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
Răspunsuri ENDDEFINE
/
1 : d ; 2 : b, c ; 3 : b, c ; 4 : b, e ; 5 : a, b ; 6 : d ; 7 : a, b ; 8 : d, e -~-~
144 145
~
Într-o BDD utilizatorul formulează cereri de regăsire distribuite, iar acestea 2. Din fluxul de prelucrare a unei cereri distribuite fac parte operaţiile:
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 (dicţionar) de structură
globală
Pentru utilizator exploatarea BDD trebuie să se facă în acelaşi 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ă răspunsul
revenind SGBD distribuit.
e) SGBD local compune răspunsurile locale cu ajutorul catalogului de
structură globală
Note bibliografice 3. Care din următoarele tipuri de baze de date pot fi într-un sistem
Sinteza din acest capitol este o iniţiere în BDD şi a fost construită din
distribuit ? : 1) compuse, 2) centralizate, 3) multiplicate, 4) indexate,
...... [VELUOO), [CONNOO), [DATE04]. 5) partiţionate, 6) compozite.
Aspecte suplimentare se găsesc în referinţa bibliograflcă (COD099), dar şi a) 2, 3, 5
în referinţele 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 fără a cunoaşte localizarea datelor
reţele 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 regăsire distribuite c) datele pot fi duplicate, dar acest lucru este invizibil pent~ utilizator
......
d) coerenţa BDD va fi asigumtă de sistemul de operare
e) concepţia de organizare a unei BDD este în totalitate diferită de ce a
unei BD locale
...... Teste-grilă
1. în structura unei BDD se regăsesc schemele: 5. Care din următoarele 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 reţea de calculatoare pot fi:
a) LAN Răspunsuri
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 colecţii de date
Probleme
.-.
1. Se dă o reţea de calculatoare LAN. Să se alcătuiască 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 doreşte să se realizeze o
BDD pentru activitatea de producţie. Să se propună caracteristicile
e) datele sunt organizate şi prelucrate obligatoriu cu un SGBD
acestei BDD.
8. Caracteristici ale BDD sunt: 3. Se doreşte 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 doreşte realizarea unei
c) protecţia datelor nu are aspecte suplimentare faţă de BD locale
BDD pentru evidenţa contractelor de vânzare, care va conţine 8
d) utilizatorul trebuie să cunoască localizarea datelor
tabele. Să se propună o configuraţie de BDD partiţionată într-o reţea
e) accesul concurent la date nu este permis
cu 12 calculatoare. 1· -
.....
156
157
....
Va rezulta tabela grafici care va conţine o singură înregistrare şi un Sunt explicate şi exemplificate câteva 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 salvării vor rezulta două fişiere: grajic/.dbjşi grafic/ftp Un studiu de caz privind o aplicaţie cu BD relaţională. care poate fi un
4. Executăm şi af~Şăm graficul salvat mai sus parcurgând paşii: model pentru -proiectele studenţeşti sau pentru dezvollatorii de aplicaţii cu
~
deschidem tabela grafici.dbf: fie tastăm în fereastra de comandă USE baze de date în VFP va fi prezentat în Anexa l. Pe lângă codul sursă aferent,
grafic l fie selectăm din meniul sistem opţiunile: File- Open - selectăm studiul de caz conţine şi activităţile pe care trebuie să le parcurgă
fişierul grafic/ .dbf - OK; proiectantul aplicaţiei cu baze de date: analiza (structurală. dinamică).
..... Prima parte este dedicată aspectelor generale privind VFP: evoluţia, Visual Foxpro- VFP baze de date relaţionaie
'
facilităţi oferite, noutăţi versiunea 9.0, aria de utilizare, VFP ca sistem SQL limbaje relaţionale
relaţional, 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 instrucţiuni din comunicarea între sisteme mediul Internet
limbajul propriu din VFP, comparativ cu alte soluţii - din SQL, din generatoare asistenţi
tip Wizard
'-
generatoarele VFP.
Un paragraf special este destinat nucleului extins de SQL, 'care cuprinde
....... toate comenzile şi o parte dintre funcţiile SQL care sunt acceptate de VFP. Teste-grilă
Se face referire la instrucţiunile din limbajul din VFP care au funcţionalităţi
similare. Testele care urmează acoperă cam tot ceea ce înseamnă programarea în
Evoluţia VFP a însemnat adăugarea de facilităţi privind comunicarea cu alte VFP, sub cele două limbaje pe care le are: limbajul propriu procedural,
sisteme şi mediul Internet. nucleul extins de SQL.
1O. Comanda ALTER TAB LE din nucleul SQL se foloseşte: 15. Se dă comanda: CREATE stud
a) doar pentru tabelele incluse într-o bază de date Care afirmaţii sunt adevărate ?
'--
b) doar pentru tabelele libere a) creează fişierul STUD.DBF
c) doar pentru tabelele care nu fac parte dintr-o bază de date b) creează fişierele STUD.DBF şi STUD.IDX
d) doar pentru tabelele între care nu există legături c) creează tabela STUD
-.. e) doar pentru tabelele între care există legături d) creează tabela STUD şi se pot încărca, opţional, date în ea
e) creează dicţionarul BD
Il. Dicţionarul BD se creează prin comenzile:
'- a) CREA VIEW 16. Se dă comanda: CREATE bcni
b) CREA REPORT Care afirmaţii sunt adevărate ?
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 relaţia BENI
d) se pot încărca, opţional, date În BENI
.... 12. La crearea stiUcturii de date a unei tabele se poate specifica: e) comanda este greşită .......
a) denumirea atributelor
b) tipul coloanelor 17. Se dă secvenţa: USE beni
.._
c) denumirea bazei de date MODISTRU
d) tipul utilizatorului Care afirmaţii sunt adevărate?
e) lungimea câmpurilor a) se poate actualiza structura de date a tabelei BENI
.... b) este greşită 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ă câmpuri Î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ă secvenţa : USE prod _ 4. Un fişier de index ataşat unei tabele poate fi deschis prin comenzile:
MODISTRU a) SET INDEX TO
Care afirmaţii sunt adevărate? b) USE
c) ORDERBY
a) se pot modifica şi adăuga atribute din/în tabela PROD
d) OPEN INDEX
b) se poate şterge un câmp din tabela PROD
e) USE INDEX
....,
c) se poate modifica numele tabelei PROD
d) se poate modifica numele unui câmp din tabela PROD 5. Accesul secvenţial într-o tabelă se poate face prin comenzile:
c) conţine o comandă greşită 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 număr 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 ataşează un fişier tip: 7. Pentru a deschide simultan mai multe tabele pe aceeaşi 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 foloseşte pentru a d.eschide; 14. Pentru a ordona datele se pot folosi:
a) o tabelă virtuală a) restricţia de integritate PRIMARY KEY
b) fişierele 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 funţie de clauzele pe care le are, 15. Tipurile de fişiere de index care pot fi ataşate 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 secvenţial
l....i
d) se poate folosi comanda SCAN e) deschide tabela STUD pentru acces prin număr 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 foloseşte pentru accesul prin număr 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 foloseşte pentru: poziţionat:
234
235
~
23o
237
..-.
L-'
24. Efectul secvenţei: USE beni c) afiş_eazătoate înregistrările din tabela CONTRI
INDEX ON codb TO fl d) afişează prima înregistrare din tabela CONTRI
ml =22 e) poziţionează pointerul pe ultima înregistrare din tabela
m2= IOO+ml CONTRl
-...; SEEK&m2.
DISP 27. Se dă secvenţa 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ă greşită SKIP
e) permite accesul ordonat la tabela BENI DISP
SELE 1
25. Efectul secvenţei: USE prod mcheie = 'Buc'
\_.
DISP SEEKmcheie
ml =22 DISP
1-1
FIND mi Care afirmaţii sunt adevărate ?
DISP a) afişează două înregistrări 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 număr de realizare pe ambele tabele
b) acces secvenţial pentru care atributul "codp" are valoarea d) acces prin număr de realizare pe calea A
;.... 22 e) conţine o comandă greşită
CONTRl
înregistrare din tabela BENI
e) conţine o comandă greşită
d) conţine o comandă greşită
~
e) afişează două înregistrări pe calea 2 şi o singură înregistrare
32. Se dă secvenţa:
USE contrl
pe calea 4
LISTREST
Care afirmaţii sunt adevărate ? ,....,
30. Se dă secvenţa: USE contrl
a) afişează doar ultima înregistrare din tabela CONTRl
DISP REST
b) afişează toate înregistrările din tabela CONTRl
Care afinnaţie este corectă?
c) afişează toate Înregistrările de la cea curentă până la sfârşit 1""'\
a) afişează doar ultima Înregistrare din tabela CONTRl
din tabela CONTRl
b) afişează toate înregistrările din tabela CONTRl
d) poziţionează pointerul pe sfârşitul de fişier
c) alişează toate Înregistrările de la cea curentă până la sfârşitul
e) o comandă este greşită ~
din CONTRI
d) poziţionează pointerul pe sfârşitul de fişier
e) conţine o comandă greşită ~
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 adăugare la sfârşit, se face
DISP prin comenzile:
SKIP-1 a) APPE
........
DISP b) ADD
Care afirmatii sunt adevărate ? c) INSERT
a) crează un context curent şi lucrează pe acesta d) ZAP
._,
b) afişează înregistrarea patru din tabelele PROD şi BENI e) UPDATE
c) afişează î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ă greşită 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. Adăugarea unui tuplu la sfârşitul 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
c) atişa~ea pe ecran a tabelei denp 12. Pentru a putea lucra cu noţiunea 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. Adăugarea 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ă secvenţa: USE beni
d) APPEND G03
e) ADDDATA APPEND BLANK
!""'\
Care afirmaţii sunt adevărate ?
1O. Pentru a putea folosi comenzile INSERT INTO şi UPDATE trebuie a) adaugă o înregistrare la sfârşitul tabelei curente
executată anterior comanda: b) adaugă un număr de înregistrări dorit de utilizator
a) OPEN DATA c) adaugă o înregistrare după cea curentă
b) CREA DATA d) adaugă o inregistrare după una cu numărul de ?rdine}. '-~
244 245
"""
'--'
15. Se dă.secvenţa: 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) afişează prima şi ultima înregistrare din tabela PROD
Care afirmaţii sunt adevărate ? e) şterge logic şi fizic toate tuplurile pentru care atributul
<../
a). înlocuieşte, 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) înlocuieşte, în toate tuplurile, un caracter din atributul denb DELETE NEXT 2
cu valoarea 1 GOTOP
,._;,
LIST
16. Se dă secventa: USE prod Care afirmaţii sunt adevărate ?
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
afirmaţiisunt adevărate ?
în primele 3 înregistrări atributul "codp" cu 22 şi
d) şterge logic doar al doilea tuplu
e) şterge logic primele două tupluri
246
~ 247
5. Terminarea forţată a execuţiei unui program VFP se face prin
ENDDO
comanda:
a) ieşirea forţată din structm·a alternativă·
a) CANC
b) ieşirea forţată din structura repetitivă
b) EXIT
c) ieşirea din prima structură repetitivă şi continuarea cu cea de-a
c) ABOR
doua
d) RETU
.-.
d) nu are nici un efect
e) QUIT
e) ieşirea din structura repetitivă şi continuarea cu atribuirea
,.....
6. Dintre structurile de program de mai jos, sunt repetitive:
2. Următorul program afişează:
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 încărca prin comenzile:
a) afişează pe ecran numărul 22
a) MODI COMM _./
b) afişează pe ecran x -~"
b) LOAD ,.....,
c) afişează valori pe 22 de linii din ecran
c) ED
d) afişează pe ecran caracterul X
d) STORE
e) apelează autodocumentarea HELP
e) INSERT .....
8. Care din următoarele afirmaţii sunt adevărate 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 secvenţială şi alternativă de program
c) secvenţială
d) repetitivă cu test iniţial
e) repetitivă cu test final
d) are structura secvenţială de program
e) are doar structurile secvenţială şi repetitivă de program -
,...,
249
248
,--,
:-:-·~
9. Care din următoarele afirmaţii sunt adevărate pentru Visual FoxPro: 12. Se dă secventa de program: SET T ALK OFF
.... a) permite, în fereastra de comandă, doar structurile · ml =22
secvenţială ş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 adevărate?
program
e) permite structurile: secvenţială, alternativă, repetitivă de a) afişează conţinutul tuturor variabilelor definite
program b) defineşte variabila x3 de tip real
\....,1
c) conţine o eroare
l O. Se dă secvenţa:
SET T ALK OFF d) foloseşte două funcţii de sistem
mi =0 c) afişează, 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 adevărate ?
a) afişează valoarea O pentru ml
mi= m**2
b) afişează valoarea 2 pentru m2 lFml < 100
c) conţine o comandă greşită ?8
L.
d) afişează valorile 1 şi 2 pentru m3 ELSE
e) afişează şirul "m1, m2, m3" IF ml > 100
o..J
? 108
11. Se dă secvenţa: 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 afişează?
@ 5,5 SAY mi, m3
Care afirmaţii sunt adevărate ? a) 64
a) la afişare, variabila mi este de tip logic b) 108
b) la afişare, variabila m2 este de tip logic c) nu se afişează nimic
\....' c) la afişare, variabila m3 este detip şir de caractere d) 8
d) conţine o comandă greşită e) m1
e) la afişare, se scrie câte o variabilă pe un rând
\..1
-. 250 25!
-- ·
1"""1
14. Ce va afişa secvenţa 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 afişa secvenţa 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 afişa secvenţa 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 afişa secvenţa 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 ? CÂSE m2< 100
a) conţine o comandă greşită m3= m3+ 1
b) 10 OTHERWISE
c) 99 m3= m3-l _..
~
d) XX ENDCASE
e) 12 e) DO CASE
- 18. Secvenţa: 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
20. Care din următoarele secvenfe de program calculează şi afişează secolul READ
dintr-un an încărcat 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. Considerăm intervalele [mll, ml2] şi [m21, m22] unde mll < ml2,
? man PICTURE '9999' m2l < m22 şi toate sunt numere reale. Ce afişează secvenţa de program
t-\
ENDIF următoare?
mi =m21
t~ 23. Ce va afişa secvenţa 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) conţine o comandă greşită
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) intersecţia celor două intervale 24. Ce va afişa secvenţa de program? SET TALK OFF
e) conţine o comandă greşită ml=3
STORE 30 TO m2
22. Ce va afişa secvenţa 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) conţine o comandă greşită
m3 = m3 -1 c) 3, 30
ENDDO d) 30,3
._ ? m2 e) 33,30
a) 10
b) o 25. Ce realizează secvenţa 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 înregistrările din tabelă
a) contorizează câte elemente 2 şi respectiv 1 conţine un vector
c) contorizează numărul de înregistrările care conţin "codp"
b) extrage dintr-un vector un element 2 şi un element 1 sub 100
c) construieşte un vector care arc elementele pare egale cu 2 şi
d) contorizează numărul de înregistrările care conţin "codp"
cele impare egale cu 1 peste 100
d) construieşte un vector care are elementele pare egale cu 1 şi
e) cumulează "codp" dacă este mai mic de 100 1
1
SKIP ENDDO
UNTIL EOF() a) calculează câte înregistrări au primele două caractere din
a) conţine o comandă greşită
"denp" egale cu M ,......
b) accesează toate înregistrările din tabelă b) conţine o comandă greşită
-
c) contorizează înregistrările care conţin "codp" egal cu 100
c) contorizează numărul de înregistrăr·i pentru car~. primul
-··
d) contorizează înregistrările care conţin "codp" peste 100
caracter din "denp" este M
e) cumulează "codp" dacă este mai mic de 100
d) conţine o comandă greşită
e) contorizează numărul de înregistrări pentru care al doilea 1"
1
caracter din ,.....,
27. Ce realizează secvenţa de program? SET TALK ON
USE contrl "denp" este M
mc =0
SCAN 29. Ce realizează secvenţa de program?USE prod ~
"-
începe cu VE sau ve .-
c) afişează "denb" din înregistrările pentru care acest atribut 33. Ce realizează secvenţa de program? SET T ALK OF_F.
începe cu alte caractere decât VE USEcontrl
"-
d) ciclează la infinit m =RECNO() - 1
e) conpne o comandă greşită 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) afişează valoarea 15
...... a) afişează "denb" din înregistrările pentru care acest atribut b) conţine o comandă greşită
începe cu VE c} calculează numărul de înregistrări din tabela "contrl"
265
264
t"'"l
L
l·
39. Se dă următoarea secventa de program. Care afirmatii sunt f
adevărate?
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
266 267
L
,....
c) afişează
toate elementele unei matrici
CASE mi= 1
d) foloseşte o instrucţiune de atribuire
GOTOP
e) ini!ializează prima coloană din matrice cu valoarea O .~
CASEmi=2
GOBOTTOM
6. Fie următorul program:
ENDCASE
USE prod 1'"-1
RETURN
LIST
Care afirmaţii sunt adevărate?
CREA TRIG ON prod FOR DELETE AS codp < 22
a) este greşită pentru că procedura este plasată după apel
DELE FOR codp = 5 "î
b) este greşită pentru că procedura nu este apelată bine
LIST
c) este greşită pentru că o structură tip CASE nu poate apărea
RECALL ALL
I..!ST
într-o procedură ,..,
d) este greşită 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 defineşte
un declanşator
e) este greşită o comandă GO ...,
c se şterg fizic tupluri
el. se afişează doar înregistrarea a 5 a din tabela curentă
9. Se dă următoarea secvenţă de program:
c. se realizează apelul unui declanşator
mk= 1 ,...
@ 5,5 SA Y 'mk:' GET
7. Cu ajutorul unui declanşator se pot:
READ
a) şterge date din tabele
DOpl 1""'\
b) adăuga date în tabele
PROCEDURE pl
modifica date din tabele
c)
IFmk=2 "
d) crea tabele
? 'CORECT'
c) crea baze de date
ELSE
- în procedura "pl"
e) este greşită secvenţa
ENDCASE
CASE mi =3
mdn= 'N'
./
-
PROCp2 "ml"
m3 =m2+m1
270
..... 271
.....
'1
li 13. Se dă următoarea 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
'-'
b) realizează un meniu orizontal d) accesează toate înregistrările tabelei curente
c) realizează o fereastră e) crează un fişier de index ataşat tabelei BENI
\..." d) se poate vizualiza tabela "beni"
e) la terminarea execuţiei cursorul nu revine în fereastra de 19. Se dă secvenţa de program:
comandă SELE3
\..."
USEprod
17. Se dă următoarea 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 'Apăsaţi orice:'
DEAC WIND ALL
G05
SELE3
DISP
1.-i
274 275
22. Se dă secventa de program:
Care afirmatii sunt adevărate?
SELE 1
a) se afişează înregistrarea cinci din tabela CONTRI ~
USE prod
b) se afişează înregistrările cinci din tabela PROD
INDEX ON codp TO pl
c) se afişează o inregistrare din PR_OD care are acelaşi "codp"
SELE2 ~
cu a cincea înregistrare din CONTRI
USE contrl
d) se afişează o înregistrare din CONTRI care are acelaşi
INDEX ON codp TO el
"codp" cu a cincea înregistrare din PROD
J01N WITH prod TO conprod FOR codp = A.codp~
e) se stabileşte o legătură între tabela principală CONTRI şi
FIELDS codp, A.denp, A.ump, cantl
'"'"'
cea secundară PROD
Care afirmaţii sunt adevărate?·
20. Se dă secvenţa
SELE2
de program:
a) eroare pentru că variabilele "A.denp" şi "A.ump" nu sunt
definite
-
b) se realizează o selecţie
USE beni
INDEX ON codb TO bl UNIQUE
COPY TO cb FIELDS codb, denb
c)
d)
se realizează o joncţiune
se realizează o proiecţie
-
e) rezultă fişierul "conprod.dbr'
Care afirmaţii sunt adevărate?
a) se realizează o proiecţie din tabela BENI
b) se realizează o selecţie din tabela BENI
f) Programarea orientată obiect
c) se realizează o diferenţă din tabela BENI
d) se realizează afişarea câmpurilor "codb" şi "denb" din tabela
1. Se dă secvenţa de program: DEFINE CLASS Cl AS Vl
BENI nume=" " __.;' J
277
276
'"""
'-'
..i
'-'
1.....
2. Se dă secvenţa de program: 8I
- ? THIS.Ioc
ENDPROC
PROCEDURE sf
278 279
'-'
~.
e) se indică, prin proprietăţi, dimensiunea unei ferestre c) grupează tuplurile provenite din tabela Iocb
d) regăseşte date diritr-o tabelă'
e) afişează 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
280 281
-..
L_.
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 afişeze 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 facilităţilor 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 adăugării
fost grupate testele de mai sus: unui câmp 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; .-.,
creează o nouă tabelă CON 1 cu aceeaşi 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 afişeze din tabela CONTR cantităţile pentru contractele al căror
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
!""'\