Gemstone Data Library
Show/Hide TOC

# ITableOperationsQueryRecordsWhere Method

Queries database and returns modeled table records for the specified SQL filter expression and parameters.

## Definition

Namespace: Gemstone.Data.Model
Assembly: Gemstone.Data (in Gemstone.Data.dll) Version: 1.0.156 -- Release Build+dcdaaebc8db0d076f561458ac184e317c7d68401
C#
View Source Request Example

    IEnumerable QueryRecordsWhere(
    	string? filterExpression,
    	params Object?[] parameters
    )

VB
View Source Request Example

    Function QueryRecordsWhere (
    	filterExpression As String,
    	ParamArray parameters As Object()
    ) As IEnumerable

C++
View Source Request Example

    IEnumerable^ QueryRecordsWhere(
    	String^ filterExpression,
    	... array<Object^>^ parameters
    )

JavaScript
View Source Request Example

    function QueryRecordsWhere(filterExpression, ... parameters);

#### Parameters

filterExpression String
  Filter SQL expression for restriction as a composite format string - does not include WHERE. When escaping is needed for field names, use standard ANSI quotes.
parameters Object
  Restriction parameter values.

#### Return Value

IEnumerable
An enumerable of modeled table row instances for queried records.

## Remarks

Each indexed parameter, e.g., "{0}", in the composite format filterExpression will be converted into query parameters where each of the corresponding values in the parameters collection will be applied as IDbDataParameter values to an executed IDbCommand query.

If any of the specified parameters reference a table field that is modeled with either an EncryptDataAttribute or FieldDataTypeAttribute, then the function GetInterpretedFieldValue(String, Object) will need to be called, replacing the target parameter with the returned value so that the field value will be properly set prior to executing the database function.

If needed, field names that are escaped with standard ANSI quotes in the filter expression will be updated to reflect what is defined in the user model.

This is a convenience call to QueryRecords(String, RecordRestriction, Int32) only specifying the RecordRestriction parameter.

## See Also

#### Reference

ITableOperations Interface
Gemstone.Data.Model Namespace