Curs Predare Visual Foxpro

download Curs Predare Visual Foxpro

of 11

Transcript of Curs Predare Visual Foxpro

VISUAL FOXPRO SGBD RELAIONAL Visual Foxpro este un SGBD modern , O baz de date relaional relaional reprezint o structur complex folosit la memorarea i gestionarea datelor. In Visual Foxpro o baz de date reprezinta un container n care sunt puse la un loc mai multe tabele cu date ntre care pot s existe legturi . Baza de date are asociat un fiier cu extensia DBC n care sunt memorate date referitoare la baza de date : tabelele componente, relaiile dintre tabele , dicionarul de date asociate. Tabelele sunt structuri n care se pot memora date descriind un anumit tip de elemente. Fiecare caracteristic a elementelor alctuiete un cmp, iar elementele propriu-zise sunt memorate n inregistrri. Din punct de vedere fizic, tabele sunt stocate n fiiere cu extensia dbf : Exemplu de structur tabelar n care sunt stocate datele: TABELA.DBF Cmp1 Cmp2 Inregistrar ea 1 Inregistrar ea 2 Inregistrar ea n Cmp m

Exemplu Structura tabelului Nume

un tabel datep.dbf dintr-o baz de date cursani.dbc ,Cmpurile tabelului

Prenum DataN e

Studii

Venit

Popescu

Ion

11:11:1976 02:12:1973

SUPERIOA 12000000 RE SUPERIOA 23400000 RE

Georgescu Mihainregistrrile

Avrom

Mihai

08:23:1964

MEDII

23000000

Fiecare cmp al unei tabele are mai multe caracteristici ce se precizeaz la definirea tabelului :

numele su folosit la identificare ( de fapt numele coloanei ). Numele este format

din caractere ( de obicei litere , cifre i liniua de subliniere) . Dac tabelul este inclus n baza de date , numele cmpului poate fi de lungime maxim 128 de caractere. Dac tabelul este liber, nefiind legat de o anumit baz de date , numele este format din maxim 10 caractere ( prima liter), tabelul fiind de fapt un fel de baz de date din versiunile mai vechi de Foxpro

tipul cmpului - precizeaz tipul datelor , valorilor ce vor fi stocate n cmpul

(coloana) respectiv. Tipurile de date puse la dispoziie de Visual Foxpro sunt urmtoarele : 1) Character2) Curency folosit pentru a stoca valori n dolari (i se mai spune tipul monetar ) . Valoarea maxim permis este de $922 000 de miliarde i permite patru zecimale.( valorile sunt stocate pe 8 octei n memorie). 3) Numeric i Float folosite pentru pstrarea valorilor numerice , permind pnp la 20 de cifre semnificative, cu maxim 19 cifre zecimale. Valorile minime i maxim ntre care se poate lucra sunt 0.9999999999 x10-19 i 0.9999999999 x1020 . 4) Date i DateTime sunt folosite pentru pstrarea datelor calendaristice n memorie sub forma YYYYMMDD, iar DateTime pstreaz i data calendaristic i timpul n formatul HHMMSS . Datele variaz ntre limitele 01-01-100 i 12-31-

9999, iar timpul de la 12:00:00 AM la 11:59:59 PM. Trebuie precizat faptul c n tabel data calendaristic este afiat implicit n formatul american MMDDYY. Pentru a schimab acest format se poate tasta ( n fereastra de comand) comanda SET DATE TO DMY, iar pentru a avea anul cu 4 cifre trebuie tastat comanda SET CENTURY ON . 5) Logical - se folosete pentru pstrarea a dou valori : adevrat ( notat cu .T. ) i fals ( notat cu .F.) . n general , este folosit pentru mrimi cu dou stri, cum ar fi : adevarat / fals ; da/nu 6) Memo se folosete pentru stocarea irurilor mari de caractere , care depesc 254. De exemplu, un cmp Observaie sau un cmp Cv (curriculum vitae) pot fi declarate de tip memo. Trebuie s atenionm faptul c dac se folosesc cmpuri memo , sistemul va ma ataa un fiier la baza de date , fiier ce are extensia FPT i stocheaz textul cel lung al cmpului ( cmpurilor ) memo . De aceea , dac se dorete copierea unei baze de date , trebuiesc copiate mai multe fiiere : fiierul DBC (containerul b.d.) , DBF-urile ( tabelele cu date ), FPT-urile ( fiierele cu textul cmpurilor memo) . 7) General - folosit pentru stocarea de referine la anumite obiecte cum ar fi grafice. De asemenea , se folosete pentru adugarea de obiecte OLE (imagini, sunete, documente Windows). i el este stocat n fiierul cu extensia FPT asociat. lungimea cmpului - adic numrul de poziii necesare pentru pstrarea datelor acelui cmp ( numrul maxim estimat a se ocupa ) .

numrul de zecimale se refer la cmpurile numerice i precizeaz cte poziii pentru zecimale se vor aloca. fanionul (indicatorul) de indexare - acesta stabilete dac se folosete un index pe baza cmpului respectiv .

Operatorii leag datele ntre ele i se mpart n:

operatorii relaionali - folosii n diverse expresii logice:

= egal == egalitate exact > mai mare dect < mai mic dect >= sau => mai mare sau egal cu sau CREATE DATABASES caz n care aprea o fereastr de dialog pentru introducerea numelui . Pentru deschiderea BD modificarea i afiarea acesteia MODIFY DATABASE < nume >

Crearea tabelelor se face cu comanda CREATE < nume tabel > Se deschide fereastra [Table Designer] pentru a putea introduce campurile tabelului.

In interiorul ferestrei gasim 6 etichete importante care reprezinta structura tebelului: 1. Name = numele campului 2. Type = tipul campului 3. Width = latimea campului 4. Zecimals = numarul de zecimale 5. index = sortarea crescatoare sau descrescatoare pe un anumit camp 6. NULL =

Automat va aparea fereastra in care se vor introduce inregistrarile in tabel. [ CTRL+W ] Deschiderea tabelelor

Dupa introducerea inregistrarilor tabelul se va salva cu combinatia de taste

USE < nume tabel > Modificarea structurii tabelelor MODIFY STRUCTURE sau MODI STRU Listarea structurii tabelelor DISPLAY STRUCTURE DISPLAY STRUCTURE TO PRINTER Pe ecran se afiseaza - locatia tabelului - numarul de inregistrari - data ultimei modificari - toate etichetele tabelului

Afisarea unui tabel Afisarea unui tabel se poate face cu ajutorul mai multor comenzi : LIST / LIST TO PRINTER afisarea datelor pe ecran fa a putea fi modificate

LIST RECORD LIST NEXT 3 LIST REST EDIT sau CHANGE afisarea datelor pe nivele BROWSE afisarea datelor sub forma de tabel DISPLAY afisare in combinatie cu alte comenzi GO TOP GO BOTTOM GO RECORD Introducerea de noi inregistrarilor in tabel USE < nume > APPEND sau INSERT Stergerea inregistrarilor din tabel Eliminarea inregistrarilor se face la nivel logic sau fizic prin utilizarea comenzilor : DELETE ALL stergere logica RECALL ALL - demarcarea inregistrarilor insemnate pentru stergere PACK - stergerea fizica a inregistrarilor marcate ZAP - stergerea tuturor inregistrrilor trecand peste marcare Stergerea logica (marcarea pentru stergere )- inregistrarile nu sunt eliminate definitiv. DELETE RECORD stergere logica a unei inregistrari PACK DELETE RECORD 2 DELETE NEXT 3 DELETE REST

LIST FOR LIST STRUCTURE BROWSE FOR

- Prelucrarea inregistrarilor Un grup de inregistrari poate fi : ALL - toate inregistrarile NEXT - urmatoarele inregistrari RECORD - Inregistrarea cu numarul de ordine specificat REST - restul inregistrilor dinpozitia curenta pana la sfarsitul tabelului REPLACE WITH REPLACE WITH , WITH replace prenume with "jan" for nume ="mihai"

Stergerea tabelelor din BD CLOSE ALL DELETE FILE< nume tabel.dbf > - Inchiderea tabelelor CLOSE < nume > CLOSE ALL - daca sunt mai multe tabele deschise

F10 sau ALT (+prima litera din meniu) acceseaza meniurile CTRL + sageata stinga deplasare la stinga cu un cuvint CTRL + sageata dreapta deplasare la dreapta cu un cuvint HOME / END deplasare la inceputul / sfirsitul unei linii TAB deplasare la urmatorul tab SHIFT TAB deplasare la precedentul tab CTRL+ENTER salvare fisier, continuind editarea CTRL+END salvare fisier si revenire la prompter CTRL+W salvare fisier si revenire la prompter ESC abandon fisier si revenire la prompter CTRL+T marcheaza pentru stregere linia curenta CTRL+Y sterge cuvintul curent QUIT

-

REMOVE TABLE, cu sintaxa: REMOVE TABLE TableName | ? [DELETE] [RECYCLE]

DELETE FILE [NumeFis | ?] [RECYCLE] Exemplu: USE DELETE FILE tabel1.dbf

USE [[NumeBaza!]Tabel | NumeVedereSQL | ?] [IN nWorkArea | cTableAlias] [ONLINE] [ADMIN][AGAIN] [NODATA] [INDEX IndexFileList | ? [ORDER [nIndexNumber | IDXFileName | [TAG] TagName

COPY STRUCTURE TO NumeTabel [FIELDS ListaCampuri] [[WITH] CDX | [WITH] PRODUCTION] [DATABASE NumeBaza [NAME NumeTabel]] APPEND FROM NumeTabel | ? [FIELDS ListaCampuri] [FOR lExpresie] [[TYPE] [DELIMITED [WITH Delimitator | WITH BLANK | WITH TAB | WITH CHARACTER Delimiator] | PDOX | RPD | SDF | WK1 | WK3 | WKS | WR1 | WRK | CVS | XLS | XL5 [SHEET cSheetName] | XL8 [SHEET cSheetName]]] [AS nCodePage]