Struct sea_query::table::TableAlterStatement [−][src]
pub struct TableAlterStatement { /* fields omitted */ }
Expand description
Alter a table
Examples
use sea_query::{*, tests_cfg::*}; let table = Table::alter() .table(Font::Table) .add_column(ColumnDef::new(Alias::new("new_col")).integer().not_null().default(100)) .to_owned(); assert_eq!( table.to_string(MysqlQueryBuilder), r#"ALTER TABLE `font` ADD COLUMN `new_col` int NOT NULL DEFAULT 100"# ); assert_eq!( table.to_string(PostgresQueryBuilder), r#"ALTER TABLE "font" ADD COLUMN "new_col" integer NOT NULL DEFAULT 100"# ); assert_eq!( table.to_string(SqliteQueryBuilder), r#"ALTER TABLE `font` ADD COLUMN `new_col` integer NOT NULL DEFAULT 100"#, );
Implementations
impl TableAlterStatement
[src]
impl TableAlterStatement
[src]pub fn add_column(self, column_def: ColumnDef) -> Self
[src]
pub fn add_column(self, column_def: ColumnDef) -> Self
[src]Add a column to an existing table
Examples
use sea_query::{*, tests_cfg::*}; let table = Table::alter() .table(Font::Table) .add_column(ColumnDef::new(Alias::new("new_col")).integer().not_null().default(100)) .to_owned(); assert_eq!( table.to_string(MysqlQueryBuilder), r#"ALTER TABLE `font` ADD COLUMN `new_col` int NOT NULL DEFAULT 100"# ); assert_eq!( table.to_string(PostgresQueryBuilder), r#"ALTER TABLE "font" ADD COLUMN "new_col" integer NOT NULL DEFAULT 100"# ); assert_eq!( table.to_string(SqliteQueryBuilder), r#"ALTER TABLE `font` ADD COLUMN `new_col` integer NOT NULL DEFAULT 100"#, );
pub fn modify_column(self, column_def: ColumnDef) -> Self
[src]
pub fn modify_column(self, column_def: ColumnDef) -> Self
[src]Modify a column in an existing table
Examples
use sea_query::{*, tests_cfg::*}; let table = Table::alter() .table(Font::Table) .modify_column(ColumnDef::new(Alias::new("new_col")).big_integer().default(999)) .to_owned(); assert_eq!( table.to_string(MysqlQueryBuilder), r#"ALTER TABLE `font` MODIFY COLUMN `new_col` bigint DEFAULT 999"# ); assert_eq!( table.to_string(PostgresQueryBuilder), vec![ r#"ALTER TABLE "font""#, r#"ALTER COLUMN "new_col" TYPE bigint,"#, r#"ALTER COLUMN "new_col" SET DEFAULT 999"#, ].join(" ") ); // Sqlite not support modifying table column
pub fn rename_column<T: 'static, R: 'static>(
self,
from_name: T,
to_name: R
) -> Self where
T: Iden,
R: Iden,
[src]
pub fn rename_column<T: 'static, R: 'static>(
self,
from_name: T,
to_name: R
) -> Self where
T: Iden,
R: Iden,
[src]Rename a column in an existing table
Examples
use sea_query::{*, tests_cfg::*}; let table = Table::alter() .table(Font::Table) .rename_column(Alias::new("new_col"), Alias::new("new_column")) .to_owned(); assert_eq!( table.to_string(MysqlQueryBuilder), r#"ALTER TABLE `font` RENAME COLUMN `new_col` TO `new_column`"# ); assert_eq!( table.to_string(PostgresQueryBuilder), r#"ALTER TABLE "font" RENAME COLUMN "new_col" TO "new_column""# ); assert_eq!( table.to_string(SqliteQueryBuilder), r#"ALTER TABLE `font` RENAME COLUMN `new_col` TO `new_column`"# );
pub fn drop_column<T: 'static>(self, col_name: T) -> Self where
T: Iden,
[src]
pub fn drop_column<T: 'static>(self, col_name: T) -> Self where
T: Iden,
[src]Add a column to existing table
Examples
use sea_query::{*, tests_cfg::*}; let table = Table::alter() .table(Font::Table) .drop_column(Alias::new("new_column")) .to_owned(); assert_eq!( table.to_string(MysqlQueryBuilder), r#"ALTER TABLE `font` DROP COLUMN `new_column`"# ); assert_eq!( table.to_string(PostgresQueryBuilder), r#"ALTER TABLE "font" DROP COLUMN "new_column""# ); // Sqlite not support modifying table column
impl TableAlterStatement
[src]
impl TableAlterStatement
[src]pub fn to_string<T: SchemaBuilder>(&self, schema_builder: T) -> String
[src]
pub fn build<T: SchemaBuilder>(&self, schema_builder: T) -> String
[src]
pub fn build_any(&self, schema_builder: &dyn SchemaBuilder) -> String
[src]
Trait Implementations
impl Clone for TableAlterStatement
[src]
impl Clone for TableAlterStatement
[src]fn clone(&self) -> TableAlterStatement
[src]
fn clone(&self) -> TableAlterStatement
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for TableAlterStatement
[src]
impl Debug for TableAlterStatement
[src]impl Default for TableAlterStatement
[src]
impl Default for TableAlterStatement
[src]impl SchemaStatementBuilder for TableAlterStatement
[src]
impl SchemaStatementBuilder for TableAlterStatement
[src]fn build<T: SchemaBuilder>(&self, schema_builder: T) -> String
[src]
fn build<T: SchemaBuilder>(&self, schema_builder: T) -> String
[src]Build corresponding SQL statement for certain database backend and return SQL string
fn build_any(&self, schema_builder: &dyn SchemaBuilder) -> String
[src]
fn build_any(&self, schema_builder: &dyn SchemaBuilder) -> String
[src]Build corresponding SQL statement for certain database backend and return SQL string
fn to_string<T: SchemaBuilder>(&self, schema_builder: T) -> String
[src]
fn to_string<T: SchemaBuilder>(&self, schema_builder: T) -> String
[src]Build corresponding SQL statement for certain database backend and return SQL string
Auto Trait Implementations
impl !RefUnwindSafe for TableAlterStatement
impl !Send for TableAlterStatement
impl !Sync for TableAlterStatement
impl Unpin for TableAlterStatement
impl !UnwindSafe for TableAlterStatement
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,