Click or drag to resize

DynamicQueryEngine Class

DynamicQueryEngine for Firebird.
Inheritance Hierarchy

Namespace:  SD.LLBLGen.Pro.DQE.Firebird
Assembly:  SD.LLBLGen.Pro.DQE.Firebird (in SD.LLBLGen.Pro.DQE.Firebird.dll) Version: 5.11.0.0 (5.11.23.1114)
Syntax
public class DynamicQueryEngine : DynamicQueryEngineBase

The DynamicQueryEngine type exposes the following members.

Constructors
  NameDescription
Public methodDynamicQueryEngine
CTor.
Top
Properties
  NameDescription
Public propertyCreator
Gets / sets creator
(Inherited from DynamicQueryEngineBase.)
Public propertyDistinctFilteringPreferenceToUse
Gets or sets the distinct filtering preference to use. The default value is the value of the global variable DynamicQueryEngineBase.DistinctFilteringPreferenceDefault.
(Inherited from DynamicQueryEngineBase.)
Public propertyFactoryToUse
Gets the DbProviderFactory to use for this DQE.
(Inherited from DynamicQueryEngineBase.)
Public propertyFunctionMappings
Gets the function mappings for the particular DQE. These function mappings are static and therefore not changeable.
(Overrides DynamicQueryEngineBaseFunctionMappings.)
Public propertyPerCallCatalogNameOverwrites
Gets / sets perCallCatalogNameOverwrites name pairs
(Inherited from DynamicQueryEngineBase.)
Public propertyPerCallSchemaNameOverwrites
Gets / sets perCallSchemaNameOverwrites name pairs
(Inherited from DynamicQueryEngineBase.)
Public propertySupportsPackedQueries
Gets whether the database of this DQE supports packed queries, which are queries with multiple SQL statements packed together in a single DbCommand. By default this property returns false.
(Inherited from DynamicQueryEngineBase.)
Top
Methods
  NameDescription
Protected methodAddSingleTargetElementToFromClause
Adds a single target element to from clause. This is used when there's no join to add, but instead a single target. Takes care of hint emitting if required.
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendFieldExpressionAsValueForInsert
Appends the field's expression as value to the specified valueFragments list for the specified insert query. It also appends the parameters to the query as parameters (not anonymized yet)
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendFieldToValueFragmentsForInsert
Appends the field (or its expresssion) to the value fragments of the query specified for insert.
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendFromClause
Appends a FROM clause with the contents of the elements specified to the destination and adds the parameters (if any) to the query to append to.
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendGroupByClause
Appends a GROUP BY clause with the contents of the filter if it's not null / empty, to the fragments object specified. Parameters are added to the query specified
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendOrderByClause
Appends an GROUP BY clause with the contents of the filter if it's not null / empty, to the fragments object specified. Parameters are added to the query specified
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendPostUpdateQueryInBatchFragments
Appends, if required, fragments to the passed in fragments builder, for collecting data right after an update query has executed inside a batch.
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendQueryHints
Appends the hints specified a single prefix hintstring suffix clause to the fragments specified.
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendResultsetFieldsToQuery
Appends all resultset fields to the query specified using the parameters specified and outputs values detected along the way during the process for further query construction.
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendUnionedQueries
Appends, if specified, the unioned queries to the fragments specified, wrapping nested queries in () if necessary. Parameters are appneded to query.
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendUpdateSetClauses(IListIEntityFieldCore, IListIFieldPersistenceInfo, QueryFragments, IList)
Appends set clauses for an update query using the input specified to the destination list specified
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendUpdateSetClauses(IListIEntityFieldCore, IListIFieldPersistenceInfo, QueryFragments, IList, Boolean)
Appends set clauses for an update query using the input specified to the destination list specified
(Inherited from DynamicQueryEngineBase.)
Protected methodAppendWhereClause
Appends a WHERE clause with the contents of the filter if it's not null / empty, to the fragments object specified. Parameters are added to the query specified
(Inherited from DynamicQueryEngineBase.)
Protected methodCheckIfFieldNeedsInsertAction
Checks the if field needs insert action.
(Inherited from DynamicQueryEngineBase.)
Protected methodConstructFieldsToUpdateList
Constructs the list of fields to update plus its corresponding fieldpersistenceinfo list.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateActionQueryFromSQL
Creates the action query from the sql query specified using the parameter values specified.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateCommand
Creates the command.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateCommand(DbConnection)
Creates a new DbCommand object and initializes it
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateCommand(String)
Creates a new DbCommand object and initializes it
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateCommand(String, DbConnection)
Creates a new DbCommand object and initializes it
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateDbSpecificCreator
Creates a new IDbSpecificCreator and initializes it
(Overrides DynamicQueryEngineBaseCreateDbSpecificCreator.)
Public methodCreateDeleteDQ(IFieldPersistenceInfo, DbConnection, ListIPredicate)
Creates a new Delete Query object which is ready to use.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateDeleteDQ(IFieldPersistenceInfo, DbConnection, ListIPredicate, IPredicate, IRelationCollection)
Creates a new Delete Query object which is ready to use.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateInsertDQ(IEntityFields, DbConnection)
Creates a new Insert Query object which is ready to use.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateInsertDQ(IEntityFieldCore, IFieldPersistenceInfo, DbConnection)
Creates a new Insert Query object which is ready to use.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateInsertDQ(IEntityFieldCore, IFieldPersistenceInfo, QueryParameters, DbConnection)
Creates a new INSERT INTO target (field1, field2...) SELECT ... query.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreatePagingSelectDQ
Creates a new Select Query which is ready to use, based on the query parameters specified.
(Overrides DynamicQueryEngineBaseCreatePagingSelectDQ(QueryParameters, DbConnection).)
Protected methodCreateRealQueryAndParameters
Creates the real sql query to execute from the query in string form and the parameters specified. It updates 'query' with the constructed string and real DbParameter instances.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateRetrievalQueryFromSQL
Creates the retrieval query from the SQL query specified using the parameter values specified and is configured with the aspects specified.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateRowCountDQ
Creates a select query which will be executed as a scalar, and which will return a single value, the number of rows in the query formed by the elements passed in.
(Overrides DynamicQueryEngineBaseCreateRowCountDQ(QueryParameters, DbConnection).)
Public methodCreateSelectDQ
Creates a new Select Query which is ready to use, based on the specified select list and the specified set of relations. If selectFilter is set to null, all rows are selected.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSelectDQImpl
Creates a new Select Query which is ready to use, based on the specified elements.
(Overrides DynamicQueryEngineBaseCreateSelectDQImpl(QueryParameters, DbConnection, Boolean).)
Protected methodCreateSingleTargetDeleteDQ(IFieldPersistenceInfo, IActionQuery, IPredicate)
Creates a new Delete Query object which is ready to use.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSingleTargetDeleteDQ(IFieldPersistenceInfo, IActionQuery, IPredicate, IRelationCollection)
Creates a new Delete Query object which is ready to use.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSingleTargetDeleteDQUsingCorrelatedSubQuery
Creates a new Delete Query object which is ready to use.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSingleTargetDeleteDQUsingKeywordClause
Creates a new Delete Query object which is ready to use. Uses keyword clause (using keyword FROM/USING etc.)) for filtering
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSingleTargetInsertDQ
Creates a new Insert Query object which is ready to use.
(Overrides DynamicQueryEngineBaseCreateSingleTargetInsertDQ(IEntityFieldCore, IFieldPersistenceInfo, IActionQuery, DictionaryIEntityFieldCore, DbParameter).)
Protected methodCreateSingleTargetUpdateDQ(IEntityFieldCore, IFieldPersistenceInfo, IActionQuery, IPredicate)
Creates a new Update Query object which is ready to use. Only 'changed' EntityFieldCore fields are included in the update query. Primary Key fields are never updated.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSingleTargetUpdateDQ(IEntityFieldCore, IFieldPersistenceInfo, IActionQuery, IPredicate, IRelationCollection)
Creates a new Update Query object which is ready to use. Only 'changed' EntityFieldCore are included in the update query. Primary Key fields are never updated.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSingleTargetUpdateDQUsingCorrelatedSubQuery
Creates a new Update Query object which is ready to use. Only 'changed' EntityFieldCore are included in the update query. Primary Key fields are never updated. Uses a correlated subquery for filtering
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSingleTargetUpdateDQUsingFromClause
Creates a new Update Query object which is ready to use. Only 'changed' EntityFieldCore are included in the update query. Primary Key fields are never updated. Uses a FROM clause for filtering
(Inherited from DynamicQueryEngineBase.)
Public methodCreateStoredProcedureCommand
Creates a DbCommand which is ready to be used to call the stored procedure specified.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSubqueryConnectionClausesDelete
Produces a set of WHERE Clauses to use in the DELETE queries which have filters spanning multiple entities. It produces one clause if it finds the deleteTable on the PK side and then stops and it produces n clauses if it finds deleteTable on the FK side of n relations in relationsToWalk. If the deleteTable is on the PK side, it produces a clause: deleteTableAlias.PKField1 = deleteTable.PKField1 AND... (for each field in the PK 1 clause) If the deleteTable is on the FK side, it produces deleteTableAlias.Field1 = relatedEntityTable.Field1 AND ... clauses for each relation the table of the persistence info is in.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateSubqueryConnectionClausesUpdate
Produces a set of WHERE Clauses to use in the UPDATE queries which have filters spanning multiple entities. It produces one clause if it finds the updateTable on the PK side and then stops and it produces n clauses if it finds updateTable on the FK side of n relations in relationsToWalk. If the updateTable is on the PK side, it produces a clause: updatedTableAlias.PKField1 = updateTable.PKField1 AND... (for each field in the PK 1 clause) If the updateTable is on the FK side, it produces updatedTableAlias.Field1 = relatedEntityTable.Field1 AND ... clauses for each relation the table of the persistence info is in.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateTvfCallQuery
Creates a retrieval query for the tvfcall specified.
(Inherited from DynamicQueryEngineBase.)
Protected methodCreateTvfFunctionNameFragmentList
Creates the TVF function name fragment list. By default it will create 'FunctionName(parameterList)'. Override this method if the DQE requires a different strategy to call a TVF, e.g. wrapping it.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateUpdateDQ(IEntityFields, DbConnection, ListIPredicate)
Creates a new Update Query object which is ready to use. Only 'changed' EntityFields are included in the update query. Primary Key fields are never updated.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateUpdateDQ(IEntityFieldCore, IFieldPersistenceInfo, DbConnection, ListIPredicate)
Creates a new Update Query object which is ready to use. Only 'changed' EntityFieldCore fields are included in the update query.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateUpdateDQ(IEntityFields, DbConnection, ListIPredicate, IPredicate, IRelationCollection)
Creates a new Update Query object which is ready to use. Only 'changed' EntityFieldCore are included in the update query. Primary Key fields are never updated.
(Inherited from DynamicQueryEngineBase.)
Public methodCreateUpdateDQ(IEntityFieldCore, IFieldPersistenceInfo, DbConnection, ListIPredicate, IPredicate, IRelationCollection)
Creates a new Update Query object which is ready to use. Only 'changed' EntityFieldCore are included in the update query. Primary Key fields are never updated.
(Inherited from DynamicQueryEngineBase.)
Protected methodDetermineIfDuplicatesWillOccur
Determines if duplicates will occur.
(Inherited from DynamicQueryEngineBase.)
Protected methodDetermineIfFieldAliasIsRequired
Determines if field alias is required.
(Inherited from DynamicQueryEngineBase.)
Protected methodDetermineObjectAliasToUseForSelectListField
Determines the object alias to use for select list field.
(Inherited from DynamicQueryEngineBase.)
Protected methodDeterminePrePostActionFragmentsForSequencedField
Appends pre and/or post action fragments to the query fragments specified to be placed before and after an INSERT INTO table (...) SELECT query to enable identity inserts. This method should be a no-op if the field's persistence info points to a sequence that isn't an identity/system sequence so pre/post actions aren't needed. The field which persistence info is passed in is part of the projection of the SELECT part of the INSERT INTO table (...) SELECT... query.
(Inherited from DynamicQueryEngineBase.)
Protected methodDetermineSequenceValueRetrievalExpressionForSequencedField
Returns the expression in string form to use to retrieve the next value for the sequence pointed at by the passed in fieldPersistenceInfo. The expression is added to the projection of the SELECT part of an INSERT INTO table (...) SELECT... query. The field which persistence info has been passed in isn't part of the select's projection part and will have to be present with a sequence retrieval expression if the sequence used by the field is a non-system sequence. In all other situations this method returns the empty string
(Overrides DynamicQueryEngineBaseDetermineSequenceValueRetrievalExpressionForSequencedField(IFieldPersistenceInfo).)
Protected methodDetermineTargetAlias
Determines the target alias to use for a single target FROM clause.
(Inherited from DynamicQueryEngineBase.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Protected methodGetCorrectFieldTypeBasedOnTypeSpecs
Gets the correct field type, based on the type and lenght specified in the specified persistenceInfo
(Inherited from DynamicQueryEngineBase.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetNewCatalogName
Gets the new name for the catalog, given the current name. If the current name is not found in the list of catalog name overwrites, the current name is returned. This routine works on the catalog names specified in the config file.
(Inherited from DynamicQueryEngineBase.)
Public methodGetNewPerCallSequenceName
Gets the new name of the sequence passed in. Default implementation overwrites schema name with a new name if the name has been defined for overwriting. Works on the PerCallSchemaNameOverwrites set.
(Inherited from DynamicQueryEngineBase.)
Public methodGetNewPerCallStoredProcedureName
Gets the new name of the stored procedure passed in. Overwrites schema and catalog name with a new name if these names have been defined for overwriting. This routine works on the PerCallCatalogNameOverwrites and PerCallSchemaNameOverwrites names specified on this instance
(Inherited from DynamicQueryEngineBase.)
Public methodGetNewSchemaName
Gets the new name for the schema, given the current name. If the current name is not found in the list of schema name overwrites, the current name is returned. This routine works on the schema names specified in the config file.
(Inherited from DynamicQueryEngineBase.)
Public methodGetNewSequenceName
Gets the new name of the sequence passed in. Default implementation overwrites schema name with a new name if the name has been defined for overwriting.
(Inherited from DynamicQueryEngineBase.)
Public methodGetNewStoredProcedureName
Gets the new name of the stored procedure passed in. Overwrites schema and catalog name with a new name if these names have been defined for overwriting. This routine works on the catalog and schema names specified in the config file.
(Inherited from DynamicQueryEngineBase.)
Protected methodGetNullInProjectionFragment
Gets the fragment to use in a projection for a literal NULL. By default this is 'NULL', but some databases need extra processing around NULL. Do to so, override this method.
(Inherited from DynamicQueryEngineBase.)
Protected methodGetTvfFunctionNameToUse
Gets the table valued function name to use. By default it creates an object name from the elements specified like a table name.
(Inherited from DynamicQueryEngineBase.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodHandleDistinctEmit
Handles the emit of 'DISTINCT' into the query text and returns true if distinct was emitted or false if not.
(Inherited from DynamicQueryEngineBase.)
Protected methodMakeParametersAnonymous(DbCommand)
Makes the parameters anonymous in the passed in query. An anonymous parameter is '?', not '@foo'. It walks all parameters and replaces the names of these parameters with "?" in the query text
(Inherited from DynamicQueryEngineBase.)
Protected methodMakeParametersAnonymous(String, IList)
Makes the parameters anonymous in the passed in query. An anonymous parameter is '?', not '@foo'. It walks all parameters and replaces the names of these parameters with "?" in the query text
(Inherited from DynamicQueryEngineBase.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodPrepareQueryForBatchUpdates
Prepares, if necessary, the passed in query object for a batch update query. Use this method to e.g. create an output parameter which collects the number of rows affected.
(Inherited from DynamicQueryEngineBase.)
Protected methodReAssembleFragments
Reassembles the fragments specified, with separting '.'. If a fragment is empty, it's skipped
(Inherited from DynamicQueryEngineBase.)
Protected methodReAssembleStoredProcedureNameFragments
Re-assembles the stored procedure name from the fragments specified
(Inherited from DynamicQueryEngineBase.)
Protected methodResetCreator
Resets the creator object with a new one. Only used by DAO objects which keep a Dynamic Query Engine object alive.
(Inherited from DynamicQueryEngineBase.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Protected methodUpdateAliasInUpdateTablePredicates
Updates the SourceAlias in the predicates in updateFilter to the alias updatedTableAlias if the predicate targets the entity name specified.
(Inherited from DynamicQueryEngineBase.)
Protected methodWrapCommandInPagingQuery
Wraps the command in the query specified in a paging query and adds necessary parameters to the command.
(Overrides DynamicQueryEngineBaseWrapCommandInPagingQuery(IRetrievalQuery, Int32, Int32, Boolean).)
Protected methodWrapQueryInBeginEndIfNecessary
Wraps the passed in query if necessary. By default it returns the toWrap string without doing any processing.
(Inherited from DynamicQueryEngineBase.)
Top
Fields
  NameDescription
Public fieldStatic memberCompatibilityLevel
The compatibility level for this DQE. Default is firebird 2.x.
Top
See Also