pub struct ForeignKey {
pub name: Option<Ident>,
pub columns: Vec<Ident>,
pub ref_table: Ident,
pub ref_columns: Vec<Ident>,
pub on_delete: Option<ForeignKeyAction>,
pub on_update: Option<ForeignKeyAction>,
}Expand description
A foreign-key constraint.
Fields§
§name: Option<Ident>The optional constraint name.
columns: Vec<Ident>The local columns.
ref_table: IdentThe referenced table.
ref_columns: Vec<Ident>The referenced columns.
on_delete: Option<ForeignKeyAction>The ON DELETE action.
on_update: Option<ForeignKeyAction>The ON UPDATE action.
Implementations§
Source§impl ForeignKey
impl ForeignKey
Sourcepub fn new<C, R>(
columns: impl IntoIterator<Item = C>,
ref_table: impl IntoIden,
ref_columns: impl IntoIterator<Item = R>,
) -> ForeignKey
pub fn new<C, R>( columns: impl IntoIterator<Item = C>, ref_table: impl IntoIden, ref_columns: impl IntoIterator<Item = R>, ) -> ForeignKey
Builds FOREIGN KEY (columns) REFERENCES table (ref_columns).
Sourcepub fn name(self, name: impl IntoIden) -> ForeignKey
pub fn name(self, name: impl IntoIden) -> ForeignKey
Sets the constraint name.
Sourcepub fn on_delete(self, action: ForeignKeyAction) -> ForeignKey
pub fn on_delete(self, action: ForeignKeyAction) -> ForeignKey
Sets ON DELETE action.
Sourcepub fn on_update(self, action: ForeignKeyAction) -> ForeignKey
pub fn on_update(self, action: ForeignKeyAction) -> ForeignKey
Sets ON UPDATE action.
Trait Implementations§
Source§impl Clone for ForeignKey
impl Clone for ForeignKey
Source§fn clone(&self) -> ForeignKey
fn clone(&self) -> ForeignKey
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 ForeignKey
impl Debug for ForeignKey
impl Eq for ForeignKey
Source§impl PartialEq for ForeignKey
impl PartialEq for ForeignKey
impl StructuralPartialEq for ForeignKey
Auto Trait Implementations§
impl Freeze for ForeignKey
impl RefUnwindSafe for ForeignKey
impl Send for ForeignKey
impl Sync for ForeignKey
impl Unpin for ForeignKey
impl UnsafeUnpin for ForeignKey
impl UnwindSafe for ForeignKey
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<K, Q> Equivalent<Q> for K
impl<K, Q> Equivalent<Q> for K
Source§fn equivalent(&self, key: &Q) -> bool
fn equivalent(&self, key: &Q) -> bool
Compare self to
key and return true if they are equal.impl<T> ErasedDestructor for Twhere
T: 'static,
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