Query<InstanceType extends ManagedObject> class

Instances of this type configure and execute database commands.

Queries are used to fetch, update, insert, delete and count objects in a database. A query's InstanceType indicates the type of ManagedObject subclass' that this query will return as well. The InstanceType's corresponding ManagedEntity determines the database table and columns to work with.

    var query = new Query<Employee>()
      ..where.salary = whereGreaterThan(50000);
    var employees = await query.fetch();

Constructors

Query([ManagedContext context ])
Creates a new Query. [...]
factory
Query.forEntity(ManagedEntity entity, [ ManagedContext context ])
Creates a new Query without a static type. [...]
factory

Properties

canModifyAllInstances bool
Confirms that a query has no predicate before executing it. [...]
read / write
context ManagedContext
The ManagedContext this query will be executed on.
read-only
entity ManagedEntity
The ManagedEntity of the InstanceType.
read-only
fetchLimit int
Limits the number of objects returned from the Query. [...]
read / write
offset int
Offsets the rows returned. [...]
read / write
predicate QueryPredicate
A predicate for filtering the result or operation set. [...]
read / write
reduce QueryReduceOperation<InstanceType>
Returns a new object that can execute functions like sum, average, maximum, etc. [...]
read-only
timeoutInSeconds int
Number of seconds before a Query times out. [...]
read / write
valueMap Map<String, dynamic>
Values to be used when inserting or updating an object. [...]
read / write
values ↔ InstanceType
Values to be used when inserting or updating an object. [...]
read / write
where → InstanceType
A convenience for building predicate in a safe way. [...]
read-only
hashCode int
The hash code for this object. [...]
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

delete() Future<int>
Deletes InstanceTypes from the underlying database. [...]
fetch() Future<List<InstanceType>>
Fetches InstanceTypes from the database. [...]
fetchOne() Future<InstanceType>
Fetches a single InstanceType from the database. [...]
insert() Future<InstanceType>
Inserts an InstanceType into the underlying database. [...]
join<T extends ManagedObject>({T object(InstanceType x), ManagedSet<T> set(InstanceType x) }) Query<T>
Configures this instance to fetch a relationship property identified by object or set. [...]
joinMany<T extends ManagedObject>(ManagedSet<T> propertyIdentifier(InstanceType x)) Query<T>
Deprecated: see join.
@Deprecated("3.0, use join(object:set:) instead")
joinOne<T extends ManagedObject>(T propertyIdentifier(InstanceType x)) Query<T>
Deprecated: see join.
@Deprecated("3.0, use join(object:set:) instead")
pageBy<T>(T propertyIdentifier(InstanceType x), QuerySortOrder order, { T boundingValue }) → void
Configures this instance to fetch a section of a larger result set. [...]
returningProperties(List propertyIdentifiers(InstanceType x)) → void
Configures the list of properties to be fetched for InstanceType. [...]
sortBy<T>(T propertyIdentifier(InstanceType x), QuerySortOrder order) → void
Configures this instance to sort its results by some property and order. [...]
update() Future<List<InstanceType>>
Updates InstanceTypes in the underlying database. [...]
updateOne() Future<InstanceType>
Updates an InstanceType in the underlying database. [...]
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toString() String
Returns a string representation of this object.
inherited

Operators

operator ==(dynamic other) bool
The equality operator. [...]
inherited