dbquerybuilder-class
Lets you build SQL commands based on Korzh.EasyQuery.Db.DbQuery object
public abstract class Korzh.EasyQuery.Db.DbQueryBuilder
: IQueryBuilder
Assembly: Korzh.EasyQuery.Db.dll
Constructors
Name | Type | Description |
---|---|---|
DbQueryBuilder(DbQuery query) | void | Initializes a new instance of the Korzh.EasyQuery.Db.DbQueryBuilder class. |
Fields
Name | Type | Description |
---|---|---|
_isParamMode | bool | This property indicated whethere generated SQL should include parameters instead of real values. |
condFieldName | string | The name of the field in currently processing condition (used for generation of parameter names) |
Properties
Name | Type | Description |
---|---|---|
EscapeDef | string | contains escape symbol definition which will be added to the condition if necessary |
Extras | SqlExtras | Gets the Korzh.EasyQuery.Db.SqlExtras object which defines some extra clauses and options of the generated query. |
Formats | SqlFormats | Gets the formats of the result query statement. This is a structure which allows you to set different formatting option of generated SQL (or other query language) statements. For more information please read Korzh.EasyQuery.Db.SqlFormats reference. |
Model | DbModel | Gets the model. An instance of Korzh.EasyQuery.DataModel class or one of its descendants (for example DbModel) |
Options | QueryBuilderOptions | Gets or sets the builder's options. |
Query | DbQuery | Gets the query object associated with the builder. |
QueryParams | QueryParamList | Gets the list of query parameters (for parameterized queries) |
Result | QueryStatement | QueryBuilder result. |
StatementType | Type | Gets the the statement type. |
Events
Name | Type | Description |
---|---|---|
ConditionSqlGenerated | ConditionSqlGeneratedEventHandler | This event is raised during query building for each condition in the query and it allows you to replace the SQL expression generated for this condition. |
Methods
Name | Type | Description |
---|---|---|
AddExtraParams(QueryParamList extraParams) | void | Adds the list of extra parameters (mainly for sub-queries) |
Build() | bool | Builds the query and stores the result in the Korzh.EasyQuery.Db.DbQueryBuilder.Result property. The result could be some SQL statement or and an IQueryable object created by LINQ query builder. |
CalcScalarExpr(Condition cnd, string value, DataType dataType, ScalarExprOptions exprOptions) | string | Calculates the scalar value and returns SQL (or other query language) expression. This function replaces all macros with their real values first and then call Korzh.EasyQuery.Db.DbQueryBuilder.ProcessScalarValue(Korzh.EasyQuery.Condition,System.String,EasyData.DataType,Korzh.EasyQuery.ScalarExprOptions) method to get the result. |
GetGroupByExpr(QueryColumn column, SqlFormats formats) | string | Gets the column's expression using in GROUP BY clause. |
GetOrderByExpr(QueryColumn column, SqlFormats formats) | string | Gets the columns expression for ORDER BY clause. |
GetParamExpr(string id) | string | Gets the parameter expression. |
GetSelectExpr(QueryColumn column, SqlFormats formats) | string | Gets the columns expression for SELECT clause. |
ProcessDefaultMacros(StringBuilder sb, bool quoting = False) | void | Processes the default macros such as ${{Today}}, ${{True}} and others. |
ProcessFunctions(StringBuilder sb) | void | Processes the functions |
ProcessMacros(Condition cnd, StringBuilder sb, DataType dataType, ScalarExprOptions exprOptions) | void | Processes the macro values (both user-defined and default) |
ProcessScalarValue(Condition cnd, string value, DataType dataType, ScalarExprOptions exprOptions) | string | Processes the scalar value and returns SQL (or other query language) expression. |
ResetGeneratedParams() | void | Reset the list of parameters if its necessary |