pub struct SchemaBuilder { /* private fields */ }Expand description
A schema builder that can take a registry of Entities and synchronize it with database.
Implementationsยง
Sourceยงimpl SchemaBuilder
impl SchemaBuilder
Sourcepub fn register<E: EntityTrait>(self, entity: E) -> Self
pub fn register<E: EntityTrait>(self, entity: E) -> Self
Register an entity to this schema
Sourcepub async fn sync<C>(self, db: &C) -> Result<(), DbErr>where
C: ConnectionTrait + Connection,
Available on crate feature schema-sync only.
pub async fn sync<C>(self, db: &C) -> Result<(), DbErr>where
C: ConnectionTrait + Connection,
schema-sync only.Synchronize the schema with the database: creates any missing tables, columns, unique keys, and foreign keys.
Non-destructive by design. Sync only adds โ it never drops or alters existing tables or columns. If a column already exists but its type or constraints differ from the entity, sync leaves it untouched and logs a warning; apply such changes with a migration. Destructive operations (ALTER / DROP) are intentionally out of scope and would be a separate, explicitly-named API.
Unstable: schema sync is experimental and exempt from semver โ its behaviour and signature may change in a minor (2.x) release.
Trait Implementationsยง
Auto Trait Implementationsยง
impl Freeze for SchemaBuilder
impl RefUnwindSafe for SchemaBuilder
impl Send for SchemaBuilder
impl Sync for SchemaBuilder
impl Unpin for SchemaBuilder
impl UnsafeUnpin for SchemaBuilder
impl UnwindSafe for SchemaBuilder
Blanket Implementationsยง
impl<T> Allocation for T
Sourceยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Sourceยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Sourceยงimpl<T> Instrument for T
impl<T> Instrument for T
Sourceยงfn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Sourceยงfn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Sourceยงimpl<T> IntoEither for T
impl<T> IntoEither for T
Sourceยงfn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSourceยงfn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more