Documente Academic
Documente Profesional
Documente Cultură
goto top 1 go 1 goto 1 go reco 1 goto reco 1 3. Poziionare pe a 9-a nregistrare: go 9 goto 9 9 go reco 9 goto reco 9 4. Afiai nregistrarea a 10-a. DISP RECO 10 5. Afiai nregistrrile de la a 5-a pn la a 12-a inclusiv. GO 5 LIST NEXT 8 6. Listai nregistrrile de la a 8-a pn la sfritul tabelei. GO 8 DISP REST 7. Listai numele, prenumele, domiciliul i profesia primelor 10 nregistrri. GO 1 LIST FIELDS NUME, PREN, DOM, PROF NEXT 10 8. Afiai codul numeric personal i starea civil pentru ultimele ase nregistrri din tabel. GO BOTTOM SKIP -5 DISP CNP, STCIV REST 9. S se identifice, pentru a fi modificat domiciliul, nregistrarea corespunztoare persoanei Popescu Ion. LOCATE FOR UPPER(NUME)=POPESCU AND UPPER(PREN)=ION BROW sau BROW FOR UPPER(NUME)=POPESCU AND UPPER(PREN)=ION FREEZE DOM tergerea nregistrrilor dintr-o tabel de date Eliminarea unor nregistrri din tabelele de date se efectueaz n 2 etape, la nivel logic sau fizic, prin utilizarea comenzilor DELETE, RECALL, PACK, ZAP. a) tergerea logic (marcare pentru tergere): prin marcarea pentru tergere (aplicarea unui simbol negru), nregistrrile din tabelele de date nu sunt eliminate definitiv. Pentru tergerea logic este utilizat comanda: DELETE [<domeniu>] [FOR <cond1>] [WHILE <cond2>] Domeniul implicit este nregistrarea curent. Aceast comand (precum i altele) folosete clauza FOR pentru selectarea tuturor nregistrrilor care corespund condiiei logice <cond1>. Clauza WHILE ntrerupe testarea nregistrrilor cnd gsete o nregistrare ce nu respect condiia dat, <cond2>. Accesul la nregistrrile marcate pentru tergere este controlat de comanda: SET DELETED ON | OFF Cnd se alege opiunea ON, nregistrrile marcate pentru tergere nu vor fi accesibile celorlalte comenzi, iar cnd se selecteaz opiunea OFF, nregistrrile sunt accesibile indifferent de marcajul de
tergere (starea implicit este OFF). Aceast comand este util atunci cnd se lucreaz pe grupuri de nregistrri. b) Demarcarea tergerii logice. Marcajele de tergere logic pot fi anulate prin folosirea comenzii: RECALL [<domeniu>] [FOR <cond1>] [WHILE <cond2>] c) tergerea fizic. Prin folosirea acestui tip de tergere nregistrrile sunt eliminate definitiv din tabelul de date (tergerile fizice nu mai pot fi refcute). tergerile fizice au efect asupra nregistrrilor marcate logic sau asupra tuturor nregistrrilor din tabelul de date prelucrat, prin utilizarea uneia dintre comenzile: PACK sau ZAP Observaie: Comanda ZAP terge fizic toate nregistrrile, fr a fi nevoie ca acestea s fie marcate n prealabil (se pstreaz ns structura tabelei); aceast comand este echivalent cu secvena de instruciuni: DELETE ALL PACK Exemple: 1. Marcai pentru tergere nregistrrile 3, 5, 7 i 9. Validai. Anulai marcatorul nregistrrii 7. tergei fizic celelalte nregistrri. Validai. dele reco 3 dele reco 5 dele reco 7 dele reco 9 brow reca reco 7 brow pack brow 2. Marcai pentru tergere toate nregistrrile care au vrsta cuprins ntre 20 i 30 de ani. DELE FOR YEAR(DATE())-YEAR(DATAN)>=20 AND YEAR(DATE())-YEAR(DATAN)<=30 BROW 3. S se anuleze marcatorii de tergere pentru nregistrrile cu vrsta cuprins ntre 20 i 25 de ani care au salariul mai mare de 500 de lei. RECA FOR YEAR(DATE())-YEAR(DATAN)>=20 AND YEAR(DATE())-YEAR(DATAN)<=25 AND SAL>=500 BROW Modificarea coninutului unei tabele Editarea la vedere a coninutului unei tabele se face folosind comenzile : APPEND | BROWSE | EDIT| CHANGE Comenzile CHANGE i EDIT sunt identice i au urmtoarea sintax: CHANGE | EDIT [FIELDS lista campuri] [domeniu] [FOR cond] [WHILE cond] [FREEZE camp] Practic, aceste comenzi modific interactiv datele din nregistrrile domeniului precizat i selectate cu filtrul FOR sau WHILE. Clauza FIELDS afieaz, n vederea modificrii, doar cmpurile specificate n list. n plus, clauza FREEZE specific unicul cmp ce poate fi modificat. Exerciii: 1. Modificai numele i domiciliul primei nregistrri.
2. 3. 4. 5. 6.
7.
GO 1 EDIT sau EDIT RECO 1 FIELDS NUME, DOM Modificai starea civil a ultimei nregistrri. GO BOTTOM EDIT FREEZE STCIV Modificai numrul copii pentru nregistrarea 7. CHANGE RECO 7 FREEZE NRC Modificai domiciliul i salariul tuturor femeilor din tabel. CHANGE FOR UPPER(SEX)=F FIELDS DOM, SAL Afiai numele, prenumele, domiciliul, profesia i salariul nregistrrilor de la 10 la 20 care nu au copii i modificai numai salariul acestora. GO 10 BROW FIELDS NUME, PREN, DOM, PROF, SAL FOR NRC=0 NEXT 11 FREEZE SAL Modificai numai profesia de la nregistrrile 11 pn la sfritul tabelei. GO 11 EDIT REST FREEZE PROF
Comanda BROWSE are urmtoarea sintax: BROWSE [FIELDS lista campuri] [domeniu] [FOR cond] [WHILE cond] [FREEZE camp] Observaie: Comanda BROWSE permite, n afar de modificare i adugare de noi nregistrri, respectiv marcare nregistrri pentru tergere. Pentru adugare, se creeaz mai nti spaiu fizic cu CTRL+Y i apoi se introduc datele, dup care se face salvarea cu CTRL+W sau CTRL+End. Pentru marcarea nregistrrilor n vederea tergerii, se folosete combinaia CTRL+T sau se d clic pe primul cmp vid al nregistrrii. Exerciii: 1. Modificai numrul copii pentru nregistrarea 18. BROW RECO 18 FREEZE NRC 2. Modificai starea civil a nregistrrii cu numele Popescu, profesia inginer si salariul de cel puin 1000 lei. BROW FOR UPPER(NUME)=POPESCU AND UPPER(PROF)=INGINER AND SAL>=1000 FREEZE STCIV Modificarea coninutului nregistrrilor dintr-un tabel de date presupune nlocuirea valorilor din unul sau mai multe cmpuri cu altele noi. Comanda REPLACE permite actualizarea tabelelor de date cu valori precizate n comand i are urmtoarea sintax: REPLACE <cmp1> WITH <exp1> [, <cmp2> WITH <exp2> ...] [<domeniu>] [FOR <cond>] [WHILE <cond>] REPLACE nlocuiete vechea valoare din cmpul <cmp1> cu valoarea expresiei <exp1>, valoarea din cmpul <cmp2> cu <exp2> i aa mai departe. Practic, aceast comand efectueaz automat modificrile precizate, fr ca utilizatorul s mai introduc valori. Exemple: use personal ?reccount() 25
append blank ?reccount() 26 goto 7 insert blank before ?recno() 7 dele next 3 skip -1 recall pack ?reccount() 24 replace FOR nume=ALEX with ALEXANDRU Exerciii: 1.nlocuii domiciliul de la nregistrarea 3 pn la 9 inclusiv, cu valoarea Bucureti. GO 3 EDIT NEXT 7 sau GO 3 REPLACE dom WITH BUCURESTI NEXT 7 2.Modificai profesia de la nregistrrile 11 pn la sfritul bazei de date. GO 11 REPL PROF WITH INGINER REST 3.Micorai salariul cu 9% pentru toate persoanele ce au profesia inginer, sunt necstorite i nu au domiciliul n Bucureti. REPLACE sal WITH sal*0.91 FOR UPPER(prof)=INGINER AND notstciv AND UPPER(dom)=BUCURESTI 4.Mrii salariul cu 8,5% pentru toate persoanele care au cel puin 40 de ani, sunt cstorite i au copii. REPLACE sal WITH sal*1.085 FOR YEAR(DATE())-YEAR(datan)>=40 AND stciv AND nrc>0 5.Efectuai modicrile corespunztoare astfel nct s nu existe nicio persoan cu salariul mai mic dect salariul minim pe economie (550 lei). REPLACE sal WITH 550 FOR sal < 550 6.Modificai n majuscule profesia tuturor persoanelor de sex masculin. REPLACE prof WITH UPPER(prof) for UPPER(sex)=M 7.Modificai valorile din cmpul profesie n minuscule, iar n cmpurile nume i prenume prima liter s fie majuscul, iar celelalte minuscule. REPLACE prof WITH LOWER(prof), nume WITH PROPER(nume), pren WITH PROPER(pren)
Fereastra BROWSE Principala comand, pentru realizarea diferitelor operaiuni asupra tabelelor de date, prin deschiderea unei ferestre de lucru, este comanda BROWSE care poate fi editat n urmtoarea sintax: BROWSE [FIELDS <list de cmpuri>] [FOR <cond>] [FREEZE <cmp>] [NOAPPEND] [NODELETE] [NOEDIT | NOMODIFY] o FIELDS - permite ca numai cmpurile precizate s intre n editare (selecie pe vertical); o FOR precizeaz condiiile conform crora nregistrrilor vor fi afiate n fereastra BROWSE; o FREEZE - permite modificri doar pe cmpul precizat; o NOAPPEND invalideaz posibilitatea efecturii adugrilor; o NODELETE elimin marcarile pentru tergere; o NOEDIT | NOMODIFY - interzice modificrile. Ca efect al lansrii comenzii BROWSE, n meniul principal, apare o nou opiune, Table, care permite: adugarea unei noi nregistrri la un tabel de date: Append New Record (Ctrl+Y);
stabilirea nregistrrii curente: Go to Record; precizarea unor criterii de poziionare, Locate, la fel ca prin folosirea comenzii cu acelai nume:
o marcare (demarcare) pentru tergere: Toggle Deletion Mark (Ctrl+T) sau clic cu mouse-ul pe fanionul de tergere din dreptul nregistrrii: o tergere fizic: Remove Deleted Records; o tergeri conform sintaxei comenzilor DELETE i RECALL: Delete Records, Recall Records; modificri ale valorilor nscrise n cmpurile tabelelor conform sintaxei comenzii REPLACE: Replace Field.