pub enum AlterSpecification<'a> {
AddColumn {
add_span: Span,
if_not_exists_span: Option<Span>,
identifier: Identifier<'a>,
data_type: DataType<'a>,
},
AddIndex {
add_span: Span,
index_type: IndexType,
if_not_exists: Option<Span>,
name: Option<Identifier<'a>>,
constraint: Option<(Span, Option<Identifier<'a>>)>,
cols: Vec<IndexCol<'a>>,
index_options: Vec<IndexOption<'a>>,
},
AddForeignKey {
add_span: Span,
constraint: Option<(Span, Option<Identifier<'a>>)>,
foreign_key_span: Span,
if_not_exists: Option<Span>,
name: Option<Identifier<'a>>,
cols: Vec<IndexCol<'a>>,
references_span: Span,
references_table: Identifier<'a>,
references_cols: Vec<Identifier<'a>>,
ons: Vec<ForeignKeyOn>,
},
Modify {
modify_span: Span,
if_exists: Option<Span>,
col: Identifier<'a>,
definition: DataType<'a>,
},
DropColumn {
drop_column_span: Span,
column: Identifier<'a>,
cascade: Option<Span>,
},
AlterColumn {
alter_column_span: Span,
column: Identifier<'a>,
alter_column_action: AlterColumnAction<'a>,
},
OwnerTo {
span: Span,
owner: Identifier<'a>,
},
}
Expand description
Enum of alterations to perform on a table
Variants§
AddColumn
Fields
§
identifier: Identifier<'a>
AddIndex
Add an index
Fields
§
name: Option<Identifier<'a>>
Named of index if specified
§
constraint: Option<(Span, Option<Identifier<'a>>)>
Optional “CONSTRAINT” with symbol if specified
§
index_options: Vec<IndexOption<'a>>
Options on the index
AddForeignKey
Add a foreign key
Fields
§
constraint: Option<(Span, Option<Identifier<'a>>)>
Optional “CONSTRAINT” with symbol if specified
§
name: Option<Identifier<'a>>
Named of index if specified
§
references_table: Identifier<'a>
Refereed table
§
references_cols: Vec<Identifier<'a>>
Columns in referred table
§
ons: Vec<ForeignKeyOn>
List of what should happen at specified events
Modify
Modify a column
Fields
§
col: Identifier<'a>
Name of column to modify
DropColumn
Fields
§
column: Identifier<'a>
Name of column to drop
AlterColumn
OwnerTo
Modify a column
Trait Implementations§
Source§impl<'a> Clone for AlterSpecification<'a>
impl<'a> Clone for AlterSpecification<'a>
Source§fn clone(&self) -> AlterSpecification<'a>
fn clone(&self) -> AlterSpecification<'a>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'a> Debug for AlterSpecification<'a>
impl<'a> Debug for AlterSpecification<'a>
Auto Trait Implementations§
impl<'a> Freeze for AlterSpecification<'a>
impl<'a> RefUnwindSafe for AlterSpecification<'a>
impl<'a> Send for AlterSpecification<'a>
impl<'a> Sync for AlterSpecification<'a>
impl<'a> Unpin for AlterSpecification<'a>
impl<'a> UnwindSafe for AlterSpecification<'a>
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