[Overview][Constants][Types][Classes][Procedures and functions][Index] | Reference for unit 'db' (#fcl)

# TDataSet.Lookup

Search for a record and return matching values.

## Declaration

Source position: db.pas line 1610

`public function TDataSet.Lookup(`
`const KeyFields: string;`
`const KeyValues: Variant;`
`const ResultFields: string`
`):Variant; virtual;`

## Arguments

`KeyFields` |  | Semicolon-separated list of fieldnames to locate record.
`KeyValues` |  | Values for keyfields to locate record with.
`ResultFields` |  | Semicolon-separated list of fieldnames whose values must be returned.

## Function result

Value(s) of ResultFields.

## Description

Lookup always returns False in TDataset. Descendents of TDataset can override this method to call TDataset.Locate to locate the record with fields KeyFields matching KeyValues and then to return the values of the fields in ResultFields. If ResultFields contains more than one fieldname (separated by semicolons), then the function returns an array. If there is only 1 fieldname, the value is returned directly.

## Errors

If the dataset is unidirectional, then a EDatabaseError exception will be raised.

## See also

TDataset.Locate |  | Locate a record based on some key values

Documentation generated on: Feb 26 2014