TableBlueprint class

Mutable blueprint that records the operations to perform against a table.

Available extensions

Constructors

TableBlueprint.alter(String table, {String? schema})
factory
TableBlueprint.create(String table, {String? schema})
factory
TableBlueprint.fromJson(Map<String, Object?> json)
factory

Properties

columns → List<ColumnCommand>
Column commands that will run when the blueprint is applied.
no setter
engine ↔ String?
Explicit storage engine to use when creating the table.
getter/setter pair
foreignKeys → List<ForeignKeyCommand>
Foreign key commands tracked by the blueprint.
no setter
hashCode → int
The hash code for this object.
no setterinherited
indexes → List<IndexCommand>
Index commands generated from the fluent API and drops.
no setter
operation → TableOperationKind
Operation kind describing whether this is a create or alter.
final
renamedColumns → List<ColumnRename>
Column rename operations declared on this blueprint.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
schema → String?
Optional schema name for the table.
final
table → String
Name of the table being created or altered by this blueprint.
final
tableCharset ↔ String?
Charset override applied to the table.
getter/setter pair
tableCollation ↔ String?
Collation override applied to the table.
getter/setter pair
tableComment → String?
Optional comment attached to the table definition.
no setter
temporary ↔ bool
Whether the blueprint creates a temporary table.
getter/setter pair

Methods

bigIncrements(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
bigInteger(String name, {ColumnMutation mutation = ColumnMutation.add, bool unsigned = false}) → ColumnBuilder
Adds a big integer column.
binary(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a binary column.
bit(String name, {ColumnMutation mutation = ColumnMutation.add, int? length}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

boolean(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a boolean column.
box(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

char(String name, {int length = 255, ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
charset(String value) → void
cidr(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

circle(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

citext(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

collation(String value) → void
column(String name, ColumnType type, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a custom column definition.
computed(String name, String expression, {ColumnMutation mutation = ColumnMutation.add, bool stored = false, ColumnType type = const ColumnType.text()}) → ColumnBuilder
date(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
daterange(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

dateTime(String name, {ColumnMutation mutation = ColumnMutation.add, bool timezoneAware = false, int? precision}) → ColumnBuilder
datetimes({bool timezoneAware = false, int precision = 3}) → List<ColumnBuilder>
dateTimeTz(String name, {ColumnMutation mutation = ColumnMutation.add, int? precision}) → ColumnBuilder
decimal(String name, {int precision = 10, int scale = 0, ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a decimal column.
double(String name, {ColumnMutation mutation = ColumnMutation.add, int? precision, int? scale}) → ColumnBuilder
dropColumn(String name, [List<String>? additional]) → void
Drops one or more columns.
dropColumns(Iterable<String> columns) → void
Drops multiple columns.
dropForeign(String name) → void
Drops a foreign key by name.
dropIndex(String name) → void
Drops an index by name.
dropRememberToken() → void
enum_(String name, List<String> allowedValues, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
float(String name, {ColumnMutation mutation = ColumnMutation.add, int? precision, int? scale}) → ColumnBuilder
foreign(Iterable<String> columns, {required String references, required Iterable<String> referencedColumns, ReferenceAction onDelete = ReferenceAction.noAction, ReferenceAction onUpdate = ReferenceAction.noAction, String? name}) → ForeignKeyBuilder
Adds a foreign key definition.
foreignId(String name, {ColumnMutation mutation = ColumnMutation.add, bool unsigned = true, String? constrainedTable, String referencedColumn = 'id', ReferenceAction onDelete = ReferenceAction.noAction, ReferenceAction onUpdate = ReferenceAction.noAction}) → ColumnBuilder
foreignUlid(String name, {ColumnMutation mutation = ColumnMutation.add, bool nullable = false, String? constrainedTable, String referencedColumn = 'id', ReferenceAction onDelete = ReferenceAction.noAction, ReferenceAction onUpdate = ReferenceAction.noAction}) → ColumnBuilder
foreignUuid(String name, {ColumnMutation mutation = ColumnMutation.add, bool nullable = false, String? constrainedTable, String referencedColumn = 'id', ReferenceAction onDelete = ReferenceAction.noAction, ReferenceAction onUpdate = ReferenceAction.noAction}) → ColumnBuilder
fullText(Iterable<String> columns, {String? name, SqliteFullTextOptions? sqlite}) → IndexDefinition
geography(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
geometry(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
geometryCollection(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
hstore(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

id([String name = 'id']) → ColumnBuilder
increments(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds an auto-incrementing big integer primary key column.
index(Iterable<String> columns, {String? name, Map<String, Map<String, Object?>>? driverOptions}) → IndexDefinition
Adds an index across the provided columns.
inet(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

int4range(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

int8range(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

intArray(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

integer(String name, {ColumnMutation mutation = ColumnMutation.add, bool unsigned = false}) → ColumnBuilder
Adds an integer column.
integerIncrements(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
interval(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

ipAddress([String name = 'ip_address', ColumnMutation mutation = ColumnMutation.add]) → ColumnBuilder
json(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a JSON column.
jsonb(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
line(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

lineString(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
longText(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
lseg(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

ltree(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

macaddr(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

macaddr8(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

macAddress([String name = 'mac_address', ColumnMutation mutation = ColumnMutation.add]) → ColumnBuilder
markTemporary() → void
Marks the table as temporary (where supported by the driver).
mediumIncrements(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
mediumInteger(String name, {ColumnMutation mutation = ColumnMutation.add, bool unsigned = false}) → ColumnBuilder
mediumText(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
money(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

morphs(String name, {bool nullable = false}) → void
multiLineString(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
multiPoint(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
multiPolygon(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
nullableMorphs(String name) → void
nullableNumericMorphs(String name) → void
nullableTimestamps({bool timezoneAware = false, int precision = 3}) → void
nullableTimestampsTz({int precision = 3}) → void
nullableUlidMorphs(String name) → void
nullableUuidMorphs(String name) → void
numericMorphs(String name, {bool nullable = false}) → void
numrange(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

path(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

pgArray(String name, String elementType, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

pgLsn(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

pgSnapshot(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

pgVector(String name, {ColumnMutation mutation = ColumnMutation.add, int? dimensions}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

point(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
polygon(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
primary(Iterable<String> columns, {String? name}) → IndexDefinition
Adds a primary key index across the provided columns.
rawIndex(String expression, {String? name}) → IndexDefinition
rememberToken({ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
renameColumn(String from, String to) → void
Renames an existing column.
set(String name, List<String> allowedValues, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
setTableCharset(String value) → void
setTableCollation(String value) → void
setTableComment(String value) → void
smallIncrements(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
smallInteger(String name, {ColumnMutation mutation = ColumnMutation.add, bool unsigned = false}) → ColumnBuilder
softDeletes({String columnName = 'deleted_at', bool timezoneAware = false, int precision = 3}) → void
softDeletesDatetime({String columnName = 'deleted_at', int precision = 3}) → void
softDeletesTz({String columnName = 'deleted_at', int precision = 3}) → void
spatialIndex(Iterable<String> columns, {String? name, SqliteSpatialIndexOptions? sqlite}) → IndexDefinition
string(String name, {int length = 255, ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a variable length string column.
text(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a text column.
textArray(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

time(String name, {ColumnMutation mutation = ColumnMutation.add, bool timezoneAware = false}) → ColumnBuilder
timestamp(String name, {bool timezoneAware = false, ColumnMutation mutation = ColumnMutation.add, int? precision}) → ColumnBuilder
Adds a timestamp column.
timestamps({bool useCurrent = true, bool timezoneAware = false, bool nullable = false, int precision = 3}) → void
Adds created_at and updated_at timestamps.
timestampsTz({bool useCurrent = true, int precision = 3}) → void
timestampTz(String name, {ColumnMutation mutation = ColumnMutation.add, int? precision}) → ColumnBuilder
timeTz(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
timetz(String name, {ColumnMutation mutation = ColumnMutation.add, int? precision}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

tinyIncrements(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
tinyInteger(String name, {ColumnMutation mutation = ColumnMutation.add, bool unsigned = false}) → ColumnBuilder
tinyText(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
toJson() → Map<String, Object?>
toString() → String
A string representation of this object.
inherited
tsquery(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

tsrange(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

tstzrange(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

tsvector(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

txidSnapshot(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

ulid(String name, {ColumnMutation mutation = ColumnMutation.add, int length = 26}) → ColumnBuilder
ulidMorphs(String name, {bool nullable = false}) → void
unique(Iterable<String> columns, {String? name, Map<String, Map<String, Object?>>? driverOptions}) → IndexDefinition
Adds a unique index across the provided columns.
unsignedBigInteger(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds an unsigned big integer column.
unsignedInteger(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
unsignedMediumInteger(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
unsignedSmallInteger(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
unsignedTinyInteger(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
useEngine(String value) → void
uuid(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder
Adds a UUID primary key column.
uuidArray(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

uuidMorphs(String name, {bool nullable = false}) → void
varbit(String name, {ColumnMutation mutation = ColumnMutation.add, int? length}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

vector(String name, {ColumnMutation mutation = ColumnMutation.add, int? dimensions}) → ColumnBuilder
xml(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Available on TableBlueprint, provided by the PostgresTableBlueprintExtensions extension

year(String name, {ColumnMutation mutation = ColumnMutation.add}) → ColumnBuilder

Operators

operator ==(Object other) → bool
The equality operator.
inherited