Gemstone Data Library
Show/Hide TOC

# SecureTableOperations T QueryRecordWhere Method

Queries database and returns a single modeled table record for the specified SQL filter expression and parameters.

## Definition

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

    public T QueryRecordWhere(
    	ClaimsPrincipal principal,
    	string? filterExpression,
    	params Object?[] parameters
    )

VB
View Source Request Example

    Public Function QueryRecordWhere (
    	principal As ClaimsPrincipal,
    	filterExpression As String,
    	ParamArray parameters As Object()
    ) As T

C++
View Source Request Example

    public:
    T QueryRecordWhere(
    	ClaimsPrincipal^ principal,
    	String^ filterExpression,
    	... array<Object^>^ parameters
    )

JavaScript
View Source Request Example

    function QueryRecordWhere(principal, filterExpression, ... parameters);

#### Parameters

principal ClaimsPrincipal
  Claims principal which is making the request.
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

T
A single modeled table record for the queried record.

## Remarks

If no record is found for specified filter expression and parameters, null will be returned.

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) specifying the RecordRestriction parameter with a limit of 1 record.

## See Also

#### Reference

SecureTableOperationsT Class
Gemstone.Data.Model Namespace