Difference between revisions of "lookup"
From Lazarus wiki
Jump to navigationJump to searchm (Fixed syntax highlighting) |
|||
(One intermediate revision by one other user not shown) | |||
Line 2: | Line 2: | ||
== Definition == | == Definition == | ||
+ | |||
Unit: FreePascal, unit '''db''' | Unit: FreePascal, unit '''db''' | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang=pascal> |
function Lookup(const KeyFields: string; const KeyValues: Variant; const ResultFields: string): Variant; | function Lookup(const KeyFields: string; const KeyValues: Variant; const ResultFields: string): Variant; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 25: | Line 26: | ||
== See also == | == See also == | ||
− | * [http://delphi.about.com/od/database/l/aa052901a.htm | + | |
− | + | * [[locate]] | |
+ | * [http://delphi.about.com/od/database/l/aa052901a.htm Description of how to use lookup with Delphi] |
Latest revision as of 06:55, 19 February 2020
│
English (en) │
français (fr) │
Definition
Unit: FreePascal, unit db
function Lookup(const KeyFields: string; const KeyValues: Variant; const ResultFields: string): Variant;
Official documentation: none
Description
lookup is similar to locate in that it looks for a record in the dataset where the specified search values for the specified fields match.
If found, the function returns a variant array with the values of the ResultFields (a semicolon-delimited list of desired fields). If not found, it returns Null. In neither case does it change the current physical record/cursor.
KeyFields can be a single field name or a semicolon-separated list of fields.
KeyValue can be a variant or a variant array and the number of items must match the number of fields specified in KeyFields.
Note: Lookup is only implemented in non-unidirectional datasets, i.e. you must be able to move back and forwards through the dataset.