pub struct SchemaDiff {
pub added_tables: Vec<TableDef>,
pub dropped_tables: Vec<String>,
pub added_columns: Vec<(String, ColumnDef)>,
pub dropped_columns: Vec<(String, String)>,
pub type_changed_columns: Vec<(String, ColumnDef, ColumnDef)>,
pub renamed_columns: Vec<(String, String, String)>,
}Expand description
Schema 差异
Fields§
§added_tables: Vec<TableDef>新增的表(实体有,DB 无)
dropped_tables: Vec<String>删除的表(DB 有,实体无)— 破坏性,仅记录不执行
added_columns: Vec<(String, ColumnDef)>新增的列(实体有,DB 无)
dropped_columns: Vec<(String, String)>删除的列(DB 有,实体无)— 破坏性,仅记录不执行
type_changed_columns: Vec<(String, ColumnDef, ColumnDef)>类型变更的列
renamed_columns: Vec<(String, String, String)>重命名的列(启发式:同位置不同名)
Implementations§
Source§impl SchemaDiff
impl SchemaDiff
Trait Implementations§
Source§impl Clone for SchemaDiff
impl Clone for SchemaDiff
Source§fn clone(&self) -> SchemaDiff
fn clone(&self) -> SchemaDiff
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SchemaDiff
impl Debug for SchemaDiff
Source§impl Default for SchemaDiff
impl Default for SchemaDiff
Source§fn default() -> SchemaDiff
fn default() -> SchemaDiff
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for SchemaDiff
impl RefUnwindSafe for SchemaDiff
impl Send for SchemaDiff
impl Sync for SchemaDiff
impl Unpin for SchemaDiff
impl UnsafeUnpin for SchemaDiff
impl UnwindSafe for SchemaDiff
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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