database library

Classes

AnyExpression<T>
A database expression that returns all rows where any of the related rows match the filtering criteria.
Column<T>
Abstract class representing a database Column. Subclassed by the different supported column types such as ColumnInt or ColumnString.
ColumnBool
A Column holding an bool.
ColumnByteData
A Column holding ByteData.
ColumnCount
A Column holding a count of rows.
ColumnDateTime
A Column holding an DateTime. In the database it is stored as a timestamp without time zone.
ColumnDouble
A Column holding an double.
ColumnDuration
A Column holding Duration.
ColumnEnum<E extends Enum>
A Column holding an enum.
ColumnEnumExtended<E extends Enum>
Intended for internal use only
ColumnExpression<T>
Database expression for a column.
ColumnInt
A Column holding an int.
ColumnSerializable
A Column holding an SerializableModel. The entity will be stored in the database as a json column.
ColumnString
A Column holding an String.
ColumnUuid
A Column holding UuidValue.
Constant
A constant Expression.
DatabaseResult
Database result.
DatabaseResultRow
Database result row.
DatabaseResultSchema
Database result schema.
DatabaseResultSchemaColumn
Database result schema column.
EscapedExpression
A database expression that is escaped. This is used to escape values that are not expressions, such as strings and numbers.
EveryExpression<T>
A database expression that returns all rows where all of the related rows match the filtering criteria.
Expression<T>
A database Expression.
Include
The base include class, should not be used directly.
IncludeList
Defines what tables to join when querying a table.
IncludeObject
Defines what tables to join when querying a table.
ManyRelation<T extends Table>
Many relation field between two tables.
NoneExpression<T>
A database expression that returns all rows where none of the related rows match the filtering criteria.
NotExpression
A database expression to invert the result of another expression.
Order
Defines how to order a database column.
QueryParameters
Provides parameters for direct database queries
QueryParametersNamed
Named parameters for direct database queries.
QueryParametersPositional
Positional parameters for direct database queries
Table
Represents a database table.
TableRow
Holds data corresponding to a row in the database. Concrete classes are typically generated. Instances of TableRow can also be serialized and either passed to clients or cached.
Transaction
Holds the state of a running database transaction.
TwoPartExpression
A database expression with two parts.

Functions

createRelationTable<T>({required String relationFieldName, required Column field, required Column foreignField, TableRelation? tableRelation, required T createTable(TableRelation foreignTableRelation)}) → T
Creates a new Table containing TableRelation with information about how the tables are joined.

Typedefs

ColumnSelections<T extends Table> = List<Column> Function(T)
A function that returns a Column for a Table.
OrderByBuilder<T extends Table> = Column Function(T)
A function that returns a Column for a Table to be used with order by
OrderByListBuilder<T extends Table> = List<Order> Function(T)
A function that returns a list of Order for a Table to be used with order by list.
TransactionFunction<R> = Future<R> Function(Transaction transaction)
A function performing a transaction, passed to the transaction method.
WhereExpressionBuilder<T extends Table> = Expression Function(T)
A function that returns an Expression for a Table to be used with where clauses.

Exceptions / Errors

DatabaseDeleteRowException
Exception thrown when no rows is deleted when deleting a row.
DatabaseException
Exception thrown when an error occurs during a database operation.
DatabaseInsertRowException
Exception thrown when no row is inserted when inserting a row.
DatabaseUpdateRowException
Exception thrown when no rows is updated when updating a row.