ALTE DOCUMENTE
|
||||
CĂUTAREA ÎNREGISTRĂRILOR ÎNTR-O BAZĂ DE DATE
În cazul în care dorim sa gasim o înregistrare care sa satisfaca anumite conditii, putem folosi comanda LOCATE.
Sintaxa: LOCATE FOR<expL1>
[<domeniu>] [WHILE<expL2>]
Comanda cauta prima înregistrare care respecta conditia <expL1> în b.d. activa. Domeniul înregistrarilor care se testeaza este dat de clauzele <domeniu> si WHILE, domeniul implicit fiind ALL. În caz de reusita, adica la gasirea unei înregistrari care respecta conditia <expL1>, indicatorul de înregistrari se pozitioneaza pe înregistrarea respectiva, functia FOUND ( ) va returna valoarea .T. iar functia EOF( ) va returna valoarea .F. În caz contrar, indicatorul de înregistrari va fi pozitionat dupa ultima înregistrare (numarul total de înregistrari+1), FOUND( ) va returna .F. iar EOF( ) va returna .T.
Într-o b.d. pot exista mai multe înregistrari care respecta o conditie data. Prima dintre acestea va fi gasita folosind comanda LOCATE, urmatoarele vor fi gasite folosind comanda CONTINUE.
Sintaxa: CONTINUE
Comanda gaseste urmatoarea înregistrare care respecta conditiile specificate în ultima comanda LOCATE aplicata b.d. active.
Testarea reusitei sau nereusitei cautarii se face cu functiile RECNO( ), FOUND( ) si EOF( ).
Functia FOUND
Sintaxa: FOUND( [<expN>] )
este folosita pentru testarea rezultatului unei cautari în b.d. (eventual specificata prin zona de lucru <expN>). Ea returneaza .T. daca s-a gasit o înregistrare si .F. daca nu s-a gasit nici o înregistrare care sa satisfaca conditiile impuse de LOCATE.
|