Sunteți pe pagina 1din 8

Baze de date în

Visual Fox Pro


Crearea bazei de date

Universitatea de Stat „Alecu Russo”, Bălţi


2013
Obiective:
Studentul va fi capabil de a:
Crea un proiect, o bază de date în Visual Fox Pro;
Crea structura tabelelor, alegînd tipul de date corespunzător fiecărui cîmp din tabel;
Modifica structura tabelelor create;
Introduce, adăuga, modifica, edita şi vizualiza datele din tabele;
Naviga printr-un tabel al BD şi activa înregistrările din tabel;
Parcurge paşii necesari pentru eliminarea datelor din tabele;

Crearea bazei de date în Visual Fox Pro


Indicaţii:
Crearea proiectului
Crearea unui proiect în Visual Fox Pro are loc prin accesarea:
File->New->Project->New file
În fereastra Create care se deschide dăm un nume proiectului care se va salva cu extensia .pjx
(Figura 1).

Figura 1. Crearea proiectului în VFP

Crearea bazei de date


În urma paşilor efectuaţi anterior apare fereastra Project Manager în care alegem fila Data, din
care selectăm opţiunea Databases, iar apoi accesăm butonul New. Apoi din fereastra New
Database facem dublu clic pe New Database. În fereastra Create dăm un nume bazei noastre de
date care se va salva cu extensia .dbc (Figura 2).

Figura 2. Crearea bazei de date în VFP


În suprafaţa de lucru a mediului Visual Fox Pro va apărea o fereastră Database Designer urmată
de numele bazei Dvs. de date şi o bară cu instrumente Database Designer (Figura 3).

Figura 3. Fereastra Database Designer

Crearea tabelelor
Din bara cu instrumente Database Designer alegem New Table (Figura 4). Apoi din fereastra
New Table se alege New Table. În fereastra Create se dă un nume tabelului şi apoi se salvează.

Figura 4. Crearea tabelului în VFP


După salvarea tabelului, se deschide fereastra Table Designer (Figura 5) în care se specifică
structura tabelului.

Figura 5. Fereastra Table Designer


În Visual Fox Pro există posibilitatea lucrului nu doar cu opţiunile din meniu, dar şi cu lucrul în
linia de comandă (Figura 6). În cele ce urmează vom enumera şi comenzile care pot fi efectuate
şi din linia de comandă.

Figura 6. Fereastra Command

Crearea unui tabel se poate face şi cu ajutorul comenzii CREATE.

Validarea cîmpurilor unei înregistrări la introducerea datelor


După definirea structurii tabelelor se selectează cîmpul respectiv şi se introduc anumite reguli de
validare a datelor introduse în cîmpurile (Figura 5) Rule, Message, Default Value.

Rule – se introduce condiţia logică de filtrare pentru acceptarea valorii înscrise în cîmp.

Exemplu:

dacă pentru un cîmp oarecare cod_client valorile acceptate sunt între 1 şi 500, atunci în
cîmpul Rule se va introduce condiţia:
cod_client<=500 and cod_client>=1.
Dacă pentru un cîmp oarecare unităţi valorile posibile sunt numai: bucăţi, kg, ladă, atunci
în cîmpul Rule se va introduce condiţia:
unităţi= ‘bucăţi’ or unităţi= ‘kg’ or unităţi= ‘ladă’.

Message – în cadrul acestei opţiuni se introduce textul care va apărea la introducerea unei valori
care nu satisface condiţia prestabilită.

Exemplu: se poate introduce de exemplu ‘Valoarea introdusă nu este admisibilă!’.

Default Value – se introduce valoarea implicită care va apărea.

Introducerea datelor
Deschiderea unui tabel poate fi efectuată prin mai multe metode:

Din meniul File ->Open, apoi din meniul View->Browse (Figura 7).

Figura 7. Deschirerea unui table creat pentru introducerea datelor


Din meniul contextual al tabelului în fereastra Database Designer prin selectarea opţiunii
Browse (Figura 8).

Figura 8. Deschiderea unui tabel

Prin comanda
BROWSE – care afişează toate cîmpurile din fişierul de date.

BROWSE FIELDS nume_cîmp – afişează doar cîmpurile specificate.

Numele fiecărui cîmp poate să fie însoţite de chei care specifică accesul la datele din
acest cîmp:
:R – (Read Only) permite doar citirea datelor;
:n – unde n este un număr care determină lungimea vizibilă a cîmpului;
:V = expresie_logică – (Valid) efectuează controlul la ieşirea din cîmp. Dacă expresia
logică are valoarea .T. atunci este permisă părăsirea cîmpului, în caz contrar apare mesaj
de eroare:
:E = mesaj_de eroare – afişează mesajul de eroare;
:B = expresie1, expresie2 – (Between) arată intervalul de introducere a numerelor şi a
datelor calendaristice
:H = antetul_cîmpului – (Header) specifică denumirea cîmpului doar la afişarea datelor

BROWSE TITLE titlu – specifică denumirea ferestrei Browse. Implicit denumirea


ferestrei ia numele tabelului.

BROWSE FOR condiţie – afişează doar cîmpurile care satisfac condiţia.

BROWSE WHEN condiţie – afişează toată informaţia din tabel astfel încît să poată fi
modificată doar informaţia din cîmpul ce satisface condiţia, iar informaţia din restul
cîmpurilor să poată fi numai vizualizată fără posibilitatea editării acesteia.

BROWSE VALID condiţie – afişează informaţia din tabel, astfel încît în cazul încercării
de a modifica vre-un cîmp, dacă se satisface condiţia, atunci să fie posibilă părăsirea
înregistrării date, iar în caz contrar – nu (apare mesaj de eroare).

BROWSE FREEZE cîmp - afişează informaţia din tabel, îngheţînd toate cîmpurile în
afară de cîmpul specificat.
În fereastra BROWSE care apare pentru a introduce o înregistrare nouă se tastează
Ctrl+Y.
Saltul la cîmpul următor se realizează prin apăsarea tastei Enter.
Editarea cîmpului de tip memo se face prin tastarea Ctrl+PgDn. Ieşirea cu salvare din
fereastra de editare a cîmpului memo se face cu Ctrl+W.
Marcarea pentru ştergere se face cu ajutorul combinaţiei de taste Ctrl+T

Introducerea, adăugarea, modificarea, editarea şi vizualizarea datelor din tabele se mai


poate efectua cu ajutorul comenzilor: APPEND, INSERT, EDIT, CHANGE, LIST.

Modificarea structurii
După deschidere, în meniul View apar opţiunile (Figura 7):

Database Designer – permite modificarea structurii bazei de date (adăugarea/ştergerea tabelelor


din baza de date, setarea/anularea relaţiilor dintre tabele)

Table Designer – permite modificarea structurii tabelului (actualizarea cîmpurilor).

În mod comandă modificarea structurii logice a unei tabele se face cu MODIFY STRUCTURE.

Navigarea prin tabele


Navigarea printr-un tabel al BD şi activarea înregistrărilor din tabel se efectuează utilizînd
comenzile:
SKIP n – deplasarea de-a lungul fişierului de date, unde n este numărul de înregistrări peste care
se sare; n poate lua atît valori pozitive cît şi negative ceea ce înseamnă că saltul va avea loc
înainte sau înapoi în baza de date.
GO n - permite poziţionarea pe înregistrarea n din cadrul fişierului de date.
GO BOTTOM – poziţionează cursorul pe ultima înregistrare.
GO TOP - poziţionează cursorul pe prima înregistrare.

Eliminarea datelor dintr-un tabel


Pentru a şterge o înregistrare:
1. Se activează înregistrarea;
2. Se marchează înregistrarea cu comanda DELETE;(Anularea marcării: RECALL)
Pentru a marca o consecutivitate de înregistrări se utilizează comanda DELETE NEXT n, unde n
– este numărul de înregistrări, sau DELETE FOR/WHILE condiţie.
3. Se şterge înregistrarea cu ajutorul comenzilor PACK, ZAP.
Situaţii didactice de învăţare

1. Creaţi proiectul Dvs. propriu întitulat Numele_Prenumele.pjx.

2. Creaţi o bază de date numită BD_Student.dbc.

3. Creaţi tabelul Student care va avea structura indicată mai jos cu tipul de date
corespunzător fiecărui cîmp.
Numele_cîmpului Tipul Restricţii
Nume Character, dim.:25
Prenume Character, dim.:25
Data_nasterii Date, dim.:8
Oras_nasterii Character, dim.:10
Bursa Float, 2 cifre după virgulă Cuprinde valori din
intervalul 0-1500;
Mesaj de eroare: „Valoare
gresita”
Valoare implicită: 0.
Anul_inmatricularii Numeric,dim.: 4; cifre Cuprinde valori din
după virgulă: 0. intervalul 2000-2013;
Mesaj de eroare: „An
introdus gresit!”
Valoarea implicita: 2000
Gen_masculin? Logical

4. Introduceţi în baza de date creată informaţii despre cel puţin şapte studenţi din grupa
dumneavoastră.

5. Modificaţi structura tabelului Student prin adăugarea unui cîmp nou care se va numi
date_adăugătoare de tip memo. După aceasta, cu ajutorul comenzii BROWSE
adăugaţi în cîmpul memo a cel puţin trei dintre studenţi nişte informaţii adăugătoare
despre aceştia. Observaţi cum se modifică denumirea cîmpurilor de tip memo. Care
dintre ele încep cu majusculă şi care cu minusculă?
Sugestii:
Cîmpul memo este un cîmp în care se pot memora informaţii de diverse tipuri. Informaţiile dintr-
un cîmp memo nu sunt memorate în fişierul de date .dbf. Ele se memorează într-un fişier separat
cu extensia .fpt şi acelaşi nume ca a fişierului .dbf. Însă aceste cîmpuri sunt cele mai vulnerabile
cîmpuri ale sistemului FoxPro.
6. Modificaţi structura tabelului Student prin adăugarea unui cîmp nou nr_matricola.
Apoi adăugaţi valori respective pentru datele introduse deja în tabel.

7. Creaţi un tabel nou care se va numi Note. Stabiliţi de sine stătător tipul de date şi
restricţiile necesare pentru fiecare dintre cîmpurile tabelului.
Numele_cîmpului Tipul Restricţii
Cod_nota Se va autoincrementa
Cod_materie
Nota
Data

8. Ştergeţi prima înregistrare din tabelul Student.

9. Urmaţi paşii:
1. Activaţi înregistrarea a 5-a din tabelul creat;
2. apoi printr-o singură instrucţiune mişcaţi-vă cu trei înregistrări în sus;
3. în fine printr-o singură instrucţiune marcaţi următoarele 3 înregistrări.
4. Ştergeţi înregistrările marcate.
Care înregistrări au fost şterse?

10. Ştergeţi studenţii cu bursa=0.

11. Marcaţi studenţii care au anul înmatriculării <2007. Demarcaţi înregistrările marcate.

12. Afişati informaţia doar din cîmpul nume.

13. Afişaţi informaţia doar despre studentul cu prenumele Maria.

14. Afişaţi doar informaţia despre băieţii din grupa dumneavoastră.

15. Afişaţi cîmpurile cu numele şi prenumele studenţilor fără posibilitatea editării


acestora.

16. Afişaţi informaţia despre studenţii care au bursa>350,00 lei.

17. Afişaţi informaţia despre studenţii care au bursa> 250,00 şi <550,00 lei.

18. Afişaţi numele şi numai iniţialele prenumelor studenţilor.

19. Afişaţi toată informaţia din tabel astfel încît informaţia despre studenţii ce locuiesc în
Bălţi să poată fi modificată, iar informaţia despre restul studenţilor să poată fi numai
vizualizată fără posibilitatea editării acesteia.

20. Afişaţi informaţia din tabel, astfel încît în cazul încercării de a modifica bursa
studentului, dacă se satisface condiţia că bursa>300,00 lei; să fie posibilă părăsirea
înregistrării date, iar în caz contrar – nu (apare mesaj de eroare).

21. Afişaţi informaţia din tabel, îngheţînd toate cîmpurile în afară de cîmpul bursa.

Situaţie de integrare

Creaţi un proiect nou cu denumirea grupei Dvs., apoi creaţi o bază de date Facultate care
va conţine următoarea informaţie:
Studentul (nume, prenume, nr_matricolă, adresa, data_naşterii, telefon, cod_facultate);
Disciplina predată (cod_disciplină, denumire, semestru, cod_profesor);
Note (cod_nota, nr_matricolă, cod_disciplină, nota, data);
Facultate (cod_facultate, denumire, decan);
Profesor (cod_profesor, cod_disciplina, nume, prenume, grad_ştiinţific, grad_didactic)
Creaţi structura tabelelor, stabilind tipurile de date corespunzătoare fiecărui cîmp din
tabel.

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