TDABaseSQLWhereBuilder
Overview
The TDABaseSQLWhereBuilder class represents a rich set of methods to build SQL WHERE statements from Dynamic Where. The TDABaseSQLWhereBuilder class is used as part of the full query builder infrastructure that automatically builds select statements for stAutoSQL
.
The TDABaseSQLWhereBuilder class is the ancestor class for the TDASQL92WhereBuilder class that is used to generate auto SQL statements for all database drivers types. The descendant TDASQL92WhereBuilder class overrides virtual methods for processing between
, binary
, null
and unary
expressions to build SQL WHERE statements according to the SQL92 standart.
You do not need to use this class directly; this class and its descendants are used to build complete SQL statements.
Location
- Unit: uDASimpleQueryBuilder.pas
- Ancestry: TDAWhereBuilder | TDABaseSQLWhereBuilder
constructor Create (declared in TDAWhereBuilder)
Creates a new instance.
constructor Create
constructor Create (TDASimpleQueryBuilder) overload
Creates a new instance with a specified query builder object.
constructor Create(AQueryBuilder: TDASimpleQueryBuilder)
Parameters:
- AQueryBuilder: query builder
AsJson (declared in TDAWhereBuilder)
property AsJson: UnicodeString read write
AsString (declared in TDAWhereBuilder)
property AsString: UnicodeString read write
AsXml (declared in TDAWhereBuilder)
property AsXml: UnicodeString read write
Clear (declared in TDAWhereBuilder)
Clears all properties.
procedure Clear
ColumnMapping (declared in TDAWhereBuilder)
property ColumnMapping: TDAColumnMappingCollection read write
CreateWhereClause
Generates Where clause based on Expression
function CreateWhereClause: string
Expression (declared in TDAWhereBuilder)
Represents Where expressions.
property Expression: TDAWhereExpression read write
ExpressionToJson (declared in TDAWhereBuilder)
class function ExpressionToJson(const aExpression: TDAWhereExpression): UnicodeString
Parameters:
- aExpression:
ExpressionToString (declared in TDAWhereBuilder)
class function ExpressionToString(const aExpression: TDAWhereExpression): UnicodeString
Parameters:
- aExpression:
ExpressionToXml (declared in TDAWhereBuilder)
class function ExpressionToXml(const aExpression: TDAWhereExpression): UnicodeString
Parameters:
- aExpression:
ExpressionToXmlNode (declared in TDAWhereBuilder)
Converts TDAWhereExpression to XML node
class function ExpressionToXmlNode(const aExpression: TDAWhereExpression): IXMLNode
Parameters:
- aExpression: expression
Format (declared in TDAWhereBuilder)
property Format: TDynamicWhereFormat read write
GenerateFieldName protected virtual
Generates field name according to column mapping and quotation.
function GenerateFieldName(aTablename: string; aFieldName: string): string
Parameters:
- aTablename: table name
- aFieldName: field name
IsEmpty (declared in TDAWhereBuilder)
Returns True is Expression is empty.
function IsEmpty: Boolean
JsonToExpression (declared in TDAWhereBuilder)
class function JsonToExpression(const aJson: UnicodeString): TDAWhereExpression
Parameters:
- aJson:
NewBetweenExpression (TDAWhereExpression, TDAWhereExpression, TDAWhereExpression): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new BETWEEN condition to the WHERE clause:
aExpression BETWEEN aLower AND aUpper
class function NewBetweenExpression(aExpression: TDAWhereExpression; aLower: TDAWhereExpression; aUpper: TDAWhereExpression): TDAWhereExpression
Parameters:
- aExpression: expression
- aLower: The minimal value
- aUpper: The maximum value
NewBetweenExpression (string, string, TDAWhereExpression, TDAWhereExpression): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new BETWEEN condition to the WHERE clause:
aExprTableName.aExprFieldName BETWEEN aLower AND aUpper
class function NewBetweenExpression(const aExprTableName: string; const aExprFieldName: string; aLower: TDAWhereExpression; aUpper: TDAWhereExpression): TDAWhereExpression
Parameters:
- aExprTableName: table name
- aExprFieldName: field name
- aLower: The minimal value
- aUpper: The maximum value
NewBetweenExpression (string, string, Variant, Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new BETWEEN condition to the WHERE clause:
aExprTableName.aExprFieldName BETWEEN aLower AND aUpper
class function NewBetweenExpression(const aExprTableName: string; const aExprFieldName: string; aLowerValue: Variant; aUpperValue: Variant; aValuesDataType: TDADataType): TDAWhereExpression
Parameters:
- aExprTableName: table name
- aExprFieldName: field name
- aLowerValue: The minimal value
- aUpperValue: The maximum value
- aValuesDataType: data type of
aLowerValue
andaUpperValue
NewBinaryExpression (TDAWhereExpression, TDABinaryOperator, Variant): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(aLeft: TDAWhereExpression; anOp: TDABinaryOperator; const aValue: Variant): TDAWhereExpression
Parameters:
- aLeft:
- anOp:
- aValue:
NewBinaryExpression (TDAWhereExpression, TDABinaryOperator, Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(aLeft: TDAWhereExpression; anOp: TDABinaryOperator; const aValue: Variant; aType: TDADataType): TDAWhereExpression
Parameters:
- aLeft:
- anOp:
- aValue:
- aType:
NewBinaryExpression (TDAWhereExpression, TDAWhereExpression, TDABinaryOperator): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(aLeft: TDAWhereExpression; aRight: TDAWhereExpression; anOp: TDABinaryOperator): TDAWhereExpression
Parameters:
- aLeft:
- aRight:
- anOp:
NewBinaryExpression (string, string, TDABinaryOperator, Variant): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(const aTableName: string; const aFieldName: string; anOp: TDABinaryOperator; const aValue: Variant): TDAWhereExpression
Parameters:
- aTableName:
- aFieldName:
- anOp:
- aValue:
NewBinaryExpression (string, string, TDABinaryOperator, Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(const aTableName: string; const aFieldName: string; anOp: TDABinaryOperator; const aValue: Variant; aType: TDADataType): TDAWhereExpression
Parameters:
- aTableName:
- aFieldName:
- anOp:
- aValue:
- aType:
NewBinaryExpression (string, string, string, TDADataType, TDABinaryOperator): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(const aTableName: string; const aFieldName: string; const aParameterName: string; aParameterType: TDADataType; anOp: TDABinaryOperator): TDAWhereExpression
Parameters:
- aTableName:
- aFieldName:
- aParameterName:
- aParameterType:
- anOp:
NewBinaryExpressionList (declared in TDAWhereBuilder)
Adds a new condition to the WHERE clause
class function NewBinaryExpressionList(const aExpressions: array of TDAWhereExpression; anOp: TDABinaryOperator): TDAWhereExpression
Parameters:
- aExpressions: list of expressions
- anOp: operator
NewConstant (Variant): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new constant condition to the WHERE clause.
class function NewConstant(const aValue: Variant): TDAWhereExpression
Parameters:
- aValue: value
NewConstant (Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new constant condition to the WHERE clause.
class function NewConstant(const aValue: Variant; aType: TDADataType): TDAWhereExpression
Parameters:
- aValue: value
- aType: value type
NewDateTimePart (declared in TDAWhereBuilder)
class function NewDateTimePart(anExpression: TDAWhereExpression; aPart: TDADateTimePart): TDAWhereExpression
Parameters:
- anExpression:
- aPart:
NewField (declared in TDAWhereBuilder)
Adds a new field condition to the WHERE clause.
class function NewField(const aTableName: string; const aFieldName: string): TDAWhereExpression
Parameters:
- aTableName: table name
- aFieldName: field name
NewFunctionCall (declared in TDAWhereBuilder)
class function NewFunctionCall(anExpression: TDAWhereExpression; aFunctionKind: TDAFunctionKind): TDAWhereExpression
Parameters:
- anExpression:
- aFunctionKind:
NewIsNotNull overload (declared in TDAWhereBuilder)
class function NewIsNotNull: TDAWhereExpression
NewIsNotNull (string, string): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new NOT NULL condition to the WHERE clause:
aTableName.aFieldName IS NOT NULL
class function NewIsNotNull(const aTableName: string; const aFieldName: string): TDAWhereExpression
Parameters:
- aTableName: table name
- aFieldName: field name
NewList (declared in TDAWhereBuilder)
Adds a new list condition to the WHERE clause.
class function NewList(const aValues: array of TDAWhereExpression): TDAWhereExpression
Parameters:
- aValues: list of expressions
NewMacro (string): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new macro condition to the WHERE clause.
class function NewMacro(const aName: string): TDAWhereExpression
Parameters:
- aName: macro name
NewMacro (string, array of TDAWhereExpression): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new macro condition to the WHERE clause.
class function NewMacro(const aName: string; const aValues: array of TDAWhereExpression): TDAWhereExpression
Parameters:
- aName: macro name
- aValues: array of expressions.
NewNow (declared in TDAWhereBuilder)
class function NewNow: TDAWhereExpression
NewNull (declared in TDAWhereBuilder)
class function NewNull: TDAWhereExpression
NewParameter (declared in TDAWhereBuilder)
Adds a new parameter condition to the WHERE clause.
class function NewParameter(const aParameterName: string; aParameterType: TDADataType): TDAWhereExpression
Parameters:
- aParameterName: parameter name
- aParameterType: parameter type
NewToday (declared in TDAWhereBuilder)
class function NewToday: TDAWhereExpression
NewUnaryExpression (declared in TDAWhereBuilder)
Adds a new unary condition to the WHERE clause.
class function NewUnaryExpression(anExpression: TDAWhereExpression; anOp: TDAUnaryOperator): TDAWhereExpression
Parameters:
- anExpression: expression
- anOp: operator
Params (declared in TDAWhereBuilder)
Provides access to the list of parameters defined for the command.
property Params: TDAParamCollection read write
ProcessBetweenExpression protected virtual
Converts the specified between expression to SQL format and returns the SQL string.
function ProcessBetweenExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessBinaryExpression protected virtual abstract
Converts the specified binary expression to SQL format and returns the SQL string.
function ProcessBinaryExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessConstantExpression protected virtual
Converts the specified constant expression to SQL format and returns the SQL string.
function ProcessConstantExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessDatePartExpression protected virtual
function ProcessDatePartExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessDateTimeNowExpression protected virtual
function ProcessDateTimeNowExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessDateTimeTodayExpression protected virtual
function ProcessDateTimeTodayExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessExpression protected
Converts the specified expression to SQL format and returns the SQL string. The expression can have the following types: BinaryExpression, UnaryExpression, ConstantExpression, ListExpression, ParameterExpression, FieldExpression, NullExpression, MacroExpression or BetweenExpression.
function ProcessExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessFieldExpression protected virtual
Converts the specified field expression to SQL format and returns the SQL string.
function ProcessFieldExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessFunctionCallExpression protected virtual
function ProcessFunctionCallExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessListExpression protected virtual
Converts the specified list expression to SQL format and returns the SQL string.
function ProcessListExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessMacroExpression protected virtual
Converts the specified macro expression to SQL format and returns the SQL string.
function ProcessMacroExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessNullExpression protected virtual abstract
Converts the specified null expression to SQL format and returns the SQL string.
function ProcessNullExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessParameterExpression protected virtual
Converts the specified parameter expression to SQL format and returns the SQL string.
function ProcessParameterExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessUnaryExpression protected virtual abstract
Converts the specified unary expression to SQL format and returns the SQL string.
function ProcessUnaryExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
QueryBuilder
Represents the query builder object (TDASimpleQueryBuilder object) that is related to the current TDABaseSQLWhereBuilder object. This property is read-only.
property QueryBuilder: TDASimpleQueryBuilder read
QuoteFieldName protected virtual
Quotes field name
function QuoteFieldName(aTablename: string; aFieldName: string): string
Parameters:
- aTablename: table name.
- aFieldName: field name.
ReadFromJson protected virtual (declared in TDAWhereBuilder)
class function ReadFromJson(aItem: TROJSONObject): TDAWhereExpression
Parameters:
- aItem:
ReadFromXml protected virtual (declared in TDAWhereBuilder)
Reads Where expression from XML node
class function ReadFromXml(xr: IXmlNode): TDAWhereExpression
Parameters:
- xr: node
StringToExpression (declared in TDAWhereBuilder)
class function StringToExpression(const Value: UnicodeString): TDAWhereExpression
Parameters:
- Value:
WriteToJson protected virtual (declared in TDAWhereBuilder)
class procedure WriteToJson(aItem: TROJSONObject; const aExpression: TDAWhereExpression)
Parameters:
- aItem:
- aExpression:
WriteToXml protected virtual (declared in TDAWhereBuilder)
Writes Where expression to XML node
class procedure WriteToXml(sw: IXmlNode; const aExpression: TDAWhereExpression)
Parameters:
- sw: node
- aExpression: expression
Xml (declared in TDAWhereBuilder)
Represent Where expressions as XML node.
property Xml: UnicodeString read write
XMLToExpression (declared in TDAWhereBuilder)
Reads Where expression from XML
class function XMLToExpression(const aXML: UnicodeString): TDAWhereExpression
Parameters:
- aXML: given XML
AsJson (declared in TDAWhereBuilder)
property AsJson: UnicodeString read write
AsString (declared in TDAWhereBuilder)
property AsString: UnicodeString read write
AsXml (declared in TDAWhereBuilder)
property AsXml: UnicodeString read write
ColumnMapping (declared in TDAWhereBuilder)
property ColumnMapping: TDAColumnMappingCollection read write
Expression (declared in TDAWhereBuilder)
Represents Where expressions.
property Expression: TDAWhereExpression read write
Format (declared in TDAWhereBuilder)
property Format: TDynamicWhereFormat read write
Params (declared in TDAWhereBuilder)
Provides access to the list of parameters defined for the command.
property Params: TDAParamCollection read write
QueryBuilder
Represents the query builder object (TDASimpleQueryBuilder object) that is related to the current TDABaseSQLWhereBuilder object. This property is read-only.
property QueryBuilder: TDASimpleQueryBuilder read
Xml (declared in TDAWhereBuilder)
Represent Where expressions as XML node.
property Xml: UnicodeString read write
ExpressionToJson (declared in TDAWhereBuilder)
class function ExpressionToJson(const aExpression: TDAWhereExpression): UnicodeString
Parameters:
- aExpression:
ExpressionToString (declared in TDAWhereBuilder)
class function ExpressionToString(const aExpression: TDAWhereExpression): UnicodeString
Parameters:
- aExpression:
ExpressionToXml (declared in TDAWhereBuilder)
class function ExpressionToXml(const aExpression: TDAWhereExpression): UnicodeString
Parameters:
- aExpression:
ExpressionToXmlNode (declared in TDAWhereBuilder)
Converts TDAWhereExpression to XML node
class function ExpressionToXmlNode(const aExpression: TDAWhereExpression): IXMLNode
Parameters:
- aExpression: expression
JsonToExpression (declared in TDAWhereBuilder)
class function JsonToExpression(const aJson: UnicodeString): TDAWhereExpression
Parameters:
- aJson:
NewBetweenExpression (TDAWhereExpression, TDAWhereExpression, TDAWhereExpression): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new BETWEEN condition to the WHERE clause:
aExpression BETWEEN aLower AND aUpper
class function NewBetweenExpression(aExpression: TDAWhereExpression; aLower: TDAWhereExpression; aUpper: TDAWhereExpression): TDAWhereExpression
Parameters:
- aExpression: expression
- aLower: The minimal value
- aUpper: The maximum value
NewBetweenExpression (string, string, TDAWhereExpression, TDAWhereExpression): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new BETWEEN condition to the WHERE clause:
aExprTableName.aExprFieldName BETWEEN aLower AND aUpper
class function NewBetweenExpression(const aExprTableName: string; const aExprFieldName: string; aLower: TDAWhereExpression; aUpper: TDAWhereExpression): TDAWhereExpression
Parameters:
- aExprTableName: table name
- aExprFieldName: field name
- aLower: The minimal value
- aUpper: The maximum value
NewBetweenExpression (string, string, Variant, Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new BETWEEN condition to the WHERE clause:
aExprTableName.aExprFieldName BETWEEN aLower AND aUpper
class function NewBetweenExpression(const aExprTableName: string; const aExprFieldName: string; aLowerValue: Variant; aUpperValue: Variant; aValuesDataType: TDADataType): TDAWhereExpression
Parameters:
- aExprTableName: table name
- aExprFieldName: field name
- aLowerValue: The minimal value
- aUpperValue: The maximum value
- aValuesDataType: data type of
aLowerValue
andaUpperValue
NewBinaryExpression (TDAWhereExpression, TDABinaryOperator, Variant): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(aLeft: TDAWhereExpression; anOp: TDABinaryOperator; const aValue: Variant): TDAWhereExpression
Parameters:
- aLeft:
- anOp:
- aValue:
NewBinaryExpression (TDAWhereExpression, TDABinaryOperator, Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(aLeft: TDAWhereExpression; anOp: TDABinaryOperator; const aValue: Variant; aType: TDADataType): TDAWhereExpression
Parameters:
- aLeft:
- anOp:
- aValue:
- aType:
NewBinaryExpression (TDAWhereExpression, TDAWhereExpression, TDABinaryOperator): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(aLeft: TDAWhereExpression; aRight: TDAWhereExpression; anOp: TDABinaryOperator): TDAWhereExpression
Parameters:
- aLeft:
- aRight:
- anOp:
NewBinaryExpression (string, string, TDABinaryOperator, Variant): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(const aTableName: string; const aFieldName: string; anOp: TDABinaryOperator; const aValue: Variant): TDAWhereExpression
Parameters:
- aTableName:
- aFieldName:
- anOp:
- aValue:
NewBinaryExpression (string, string, TDABinaryOperator, Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(const aTableName: string; const aFieldName: string; anOp: TDABinaryOperator; const aValue: Variant; aType: TDADataType): TDAWhereExpression
Parameters:
- aTableName:
- aFieldName:
- anOp:
- aValue:
- aType:
NewBinaryExpression (string, string, string, TDADataType, TDABinaryOperator): TDAWhereExpression overload (declared in TDAWhereBuilder)
class function NewBinaryExpression(const aTableName: string; const aFieldName: string; const aParameterName: string; aParameterType: TDADataType; anOp: TDABinaryOperator): TDAWhereExpression
Parameters:
- aTableName:
- aFieldName:
- aParameterName:
- aParameterType:
- anOp:
NewBinaryExpressionList (declared in TDAWhereBuilder)
Adds a new condition to the WHERE clause
class function NewBinaryExpressionList(const aExpressions: array of TDAWhereExpression; anOp: TDABinaryOperator): TDAWhereExpression
Parameters:
- aExpressions: list of expressions
- anOp: operator
NewConstant (Variant): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new constant condition to the WHERE clause.
class function NewConstant(const aValue: Variant): TDAWhereExpression
Parameters:
- aValue: value
NewConstant (Variant, TDADataType): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new constant condition to the WHERE clause.
class function NewConstant(const aValue: Variant; aType: TDADataType): TDAWhereExpression
Parameters:
- aValue: value
- aType: value type
NewDateTimePart (declared in TDAWhereBuilder)
class function NewDateTimePart(anExpression: TDAWhereExpression; aPart: TDADateTimePart): TDAWhereExpression
Parameters:
- anExpression:
- aPart:
NewField (declared in TDAWhereBuilder)
Adds a new field condition to the WHERE clause.
class function NewField(const aTableName: string; const aFieldName: string): TDAWhereExpression
Parameters:
- aTableName: table name
- aFieldName: field name
NewFunctionCall (declared in TDAWhereBuilder)
class function NewFunctionCall(anExpression: TDAWhereExpression; aFunctionKind: TDAFunctionKind): TDAWhereExpression
Parameters:
- anExpression:
- aFunctionKind:
NewIsNotNull overload (declared in TDAWhereBuilder)
class function NewIsNotNull: TDAWhereExpression
NewIsNotNull (string, string): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new NOT NULL condition to the WHERE clause:
aTableName.aFieldName IS NOT NULL
class function NewIsNotNull(const aTableName: string; const aFieldName: string): TDAWhereExpression
Parameters:
- aTableName: table name
- aFieldName: field name
NewList (declared in TDAWhereBuilder)
Adds a new list condition to the WHERE clause.
class function NewList(const aValues: array of TDAWhereExpression): TDAWhereExpression
Parameters:
- aValues: list of expressions
NewMacro (string): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new macro condition to the WHERE clause.
class function NewMacro(const aName: string): TDAWhereExpression
Parameters:
- aName: macro name
NewMacro (string, array of TDAWhereExpression): TDAWhereExpression overload (declared in TDAWhereBuilder)
Adds a new macro condition to the WHERE clause.
class function NewMacro(const aName: string; const aValues: array of TDAWhereExpression): TDAWhereExpression
Parameters:
- aName: macro name
- aValues: array of expressions.
NewNow (declared in TDAWhereBuilder)
class function NewNow: TDAWhereExpression
NewNull (declared in TDAWhereBuilder)
class function NewNull: TDAWhereExpression
NewParameter (declared in TDAWhereBuilder)
Adds a new parameter condition to the WHERE clause.
class function NewParameter(const aParameterName: string; aParameterType: TDADataType): TDAWhereExpression
Parameters:
- aParameterName: parameter name
- aParameterType: parameter type
NewToday (declared in TDAWhereBuilder)
class function NewToday: TDAWhereExpression
NewUnaryExpression (declared in TDAWhereBuilder)
Adds a new unary condition to the WHERE clause.
class function NewUnaryExpression(anExpression: TDAWhereExpression; anOp: TDAUnaryOperator): TDAWhereExpression
Parameters:
- anExpression: expression
- anOp: operator
ReadFromJson protected virtual (declared in TDAWhereBuilder)
class function ReadFromJson(aItem: TROJSONObject): TDAWhereExpression
Parameters:
- aItem:
ReadFromXml protected virtual (declared in TDAWhereBuilder)
Reads Where expression from XML node
class function ReadFromXml(xr: IXmlNode): TDAWhereExpression
Parameters:
- xr: node
StringToExpression (declared in TDAWhereBuilder)
class function StringToExpression(const Value: UnicodeString): TDAWhereExpression
Parameters:
- Value:
WriteToJson protected virtual (declared in TDAWhereBuilder)
class procedure WriteToJson(aItem: TROJSONObject; const aExpression: TDAWhereExpression)
Parameters:
- aItem:
- aExpression:
WriteToXml protected virtual (declared in TDAWhereBuilder)
Writes Where expression to XML node
class procedure WriteToXml(sw: IXmlNode; const aExpression: TDAWhereExpression)
Parameters:
- sw: node
- aExpression: expression
XMLToExpression (declared in TDAWhereBuilder)
Reads Where expression from XML
class function XMLToExpression(const aXML: UnicodeString): TDAWhereExpression
Parameters:
- aXML: given XML
constructor Create (declared in TDAWhereBuilder)
Creates a new instance.
constructor Create
constructor Create (TDASimpleQueryBuilder) overload
Creates a new instance with a specified query builder object.
constructor Create(AQueryBuilder: TDASimpleQueryBuilder)
Parameters:
- AQueryBuilder: query builder
Clear (declared in TDAWhereBuilder)
Clears all properties.
procedure Clear
CreateWhereClause
Generates Where clause based on Expression
function CreateWhereClause: string
GenerateFieldName protected virtual
Generates field name according to column mapping and quotation.
function GenerateFieldName(aTablename: string; aFieldName: string): string
Parameters:
- aTablename: table name
- aFieldName: field name
IsEmpty (declared in TDAWhereBuilder)
Returns True is Expression is empty.
function IsEmpty: Boolean
ProcessBetweenExpression protected virtual
Converts the specified between expression to SQL format and returns the SQL string.
function ProcessBetweenExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessBinaryExpression protected virtual abstract
Converts the specified binary expression to SQL format and returns the SQL string.
function ProcessBinaryExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessConstantExpression protected virtual
Converts the specified constant expression to SQL format and returns the SQL string.
function ProcessConstantExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessDatePartExpression protected virtual
function ProcessDatePartExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessDateTimeNowExpression protected virtual
function ProcessDateTimeNowExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessDateTimeTodayExpression protected virtual
function ProcessDateTimeTodayExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessExpression protected
Converts the specified expression to SQL format and returns the SQL string. The expression can have the following types: BinaryExpression, UnaryExpression, ConstantExpression, ListExpression, ParameterExpression, FieldExpression, NullExpression, MacroExpression or BetweenExpression.
function ProcessExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessFieldExpression protected virtual
Converts the specified field expression to SQL format and returns the SQL string.
function ProcessFieldExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessFunctionCallExpression protected virtual
function ProcessFunctionCallExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression:
ProcessListExpression protected virtual
Converts the specified list expression to SQL format and returns the SQL string.
function ProcessListExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessMacroExpression protected virtual
Converts the specified macro expression to SQL format and returns the SQL string.
function ProcessMacroExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessNullExpression protected virtual abstract
Converts the specified null expression to SQL format and returns the SQL string.
function ProcessNullExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessParameterExpression protected virtual
Converts the specified parameter expression to SQL format and returns the SQL string.
function ProcessParameterExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
ProcessUnaryExpression protected virtual abstract
Converts the specified unary expression to SQL format and returns the SQL string.
function ProcessUnaryExpression(AExpression: TDAWhereExpression): string
Parameters:
- AExpression: expression
QuoteFieldName protected virtual
Quotes field name
function QuoteFieldName(aTablename: string; aFieldName: string): string
Parameters:
- aTablename: table name.
- aFieldName: field name.