Skip to main content

Module table

Module table 

Source
Expand description

This module contains types related to database tables.

Structs§

CandidForeignKeyDef
Serializable foreign key definition for API boundaries.
ColumnDef
Defines a column in a database table.
ColumnSnapshot
Snapshot of a single column definition.
CustomDataTypeSnapshot
User-defined custom-type metadata carried inside DataTypeSnapshot::Custom. Boxed in the parent enum so the discriminant stays compact (the migration error variants embed two DataTypeSnapshots each, and an inline String + WireSize would bloat crate::error::DbmsError past clippy’s result_large_err threshold).
ForeignKeyDef
Defines a foreign key relationship for a column.
ForeignKeySnapshot
Snapshot of a foreign key reference attached to a column.
IndexDef
Defines an index on one or more columns of a table.
IndexSnapshot
Snapshot of a secondary index defined on a table.
JoinColumnDef
Serializable column definition for API boundaries.
TableSchemaSnapshot
Frozen, comparable view of a TableSchema used for migration detection.

Enums§

CandidDataTypeKind
Serializable data type kind for API boundaries.
DataTypeSnapshot
Stable, tag-keyed encoding of a column data type.
OnDeleteSnapshot
Stable, tag-keyed encoding of the ON DELETE referential action.
TableError
Table related errors
ValuesSource
Indicates the source of the column values.
WireSize
On-disk wire layout descriptor for a custom-typed column.

Traits§

InsertRecord
This trait represents a record for inserting into a table.
TableRecord
This trait represents a record returned by a crate::dbms::query::Query for a table.
TableSchema
Table schema representation.
UpdateRecord
This trait represents a record for updating a table.

Functions§

fingerprint_for_name
Computes the TableFingerprint for an arbitrary table name.
flatten_table_columns
Flattens TableColumns rows into flat column-value pairs.

Type Aliases§

TableColumns
TableFingerprint
A type representing a unique fingerprint for a table schema.