pub struct CreateTable {Show 43 fields
pub or_replace: bool,
pub temporary: bool,
pub external: bool,
pub global: Option<bool>,
pub if_not_exists: bool,
pub transient: bool,
pub volatile: bool,
pub name: ObjectName,
pub columns: Vec<ColumnDef>,
pub constraints: Vec<TableConstraint>,
pub hive_distribution: HiveDistributionStyle,
pub hive_formats: Option<HiveFormat>,
pub table_properties: Vec<SqlOption>,
pub with_options: Vec<SqlOption>,
pub file_format: Option<FileFormat>,
pub location: Option<String>,
pub query: Option<Box<Query>>,
pub without_rowid: bool,
pub like: Option<ObjectName>,
pub clone: Option<ObjectName>,
pub engine: Option<TableEngine>,
pub comment: Option<CommentDef>,
pub auto_increment_offset: Option<u32>,
pub default_charset: Option<String>,
pub collation: Option<String>,
pub on_commit: Option<OnCommit>,
pub on_cluster: Option<Ident>,
pub primary_key: Option<Box<Expr>>,
pub order_by: Option<OneOrManyWithParens<Expr>>,
pub partition_by: Option<Box<Expr>>,
pub cluster_by: Option<WrappedCollection<Vec<Ident>>>,
pub clustered_by: Option<ClusteredBy>,
pub options: Option<Vec<SqlOption>>,
pub strict: bool,
pub copy_grants: bool,
pub enable_schema_evolution: Option<bool>,
pub change_tracking: Option<bool>,
pub data_retention_time_in_days: Option<u64>,
pub max_data_extension_time_in_days: Option<u64>,
pub default_ddl_collation: Option<String>,
pub with_aggregation_policy: Option<ObjectName>,
pub with_row_access_policy: Option<RowAccessPolicy>,
pub with_tags: Option<Vec<Tag>>,
}
Expand description
CREATE TABLE statement.
Fields§
§or_replace: bool
§temporary: bool
§external: bool
§global: Option<bool>
§if_not_exists: bool
§transient: bool
§volatile: bool
§name: ObjectName
Table name
columns: Vec<ColumnDef>
Optional schema
constraints: Vec<TableConstraint>
§hive_distribution: HiveDistributionStyle
§hive_formats: Option<HiveFormat>
§table_properties: Vec<SqlOption>
§with_options: Vec<SqlOption>
§file_format: Option<FileFormat>
§location: Option<String>
§query: Option<Box<Query>>
§without_rowid: bool
§like: Option<ObjectName>
§clone: Option<ObjectName>
§engine: Option<TableEngine>
§comment: Option<CommentDef>
§auto_increment_offset: Option<u32>
§default_charset: Option<String>
§collation: Option<String>
§on_commit: Option<OnCommit>
§on_cluster: Option<Ident>
ClickHouse “ON CLUSTER” clause: https://clickhouse.com/docs/en/sql-reference/distributed-ddl/
primary_key: Option<Box<Expr>>
ClickHouse “PRIMARY KEY “ clause. https://clickhouse.com/docs/en/sql-reference/statements/create/table/
order_by: Option<OneOrManyWithParens<Expr>>
ClickHouse “ORDER BY “ clause. Note that omitted ORDER BY is different than empty (represented as ()), the latter meaning “no sorting”. https://clickhouse.com/docs/en/sql-reference/statements/create/table/
partition_by: Option<Box<Expr>>
BigQuery: A partition expression for the table. https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#partition_expression
cluster_by: Option<WrappedCollection<Vec<Ident>>>
BigQuery: Table clustering column list. https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#table_option_list
clustered_by: Option<ClusteredBy>
Hive: Table clustering column list. https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-CreateTable
options: Option<Vec<SqlOption>>
BigQuery: Table options list. https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#table_option_list
strict: bool
SQLite “STRICT” clause. if the “STRICT” table-option keyword is added to the end, after the closing “)”, then strict typing rules apply to that table.
copy_grants: bool
Snowflake “COPY GRANTS” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
enable_schema_evolution: Option<bool>
Snowflake “ENABLE_SCHEMA_EVOLUTION” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
change_tracking: Option<bool>
Snowflake “CHANGE_TRACKING” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
data_retention_time_in_days: Option<u64>
Snowflake “DATA_RETENTION_TIME_IN_DAYS” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
max_data_extension_time_in_days: Option<u64>
Snowflake “MAX_DATA_EXTENSION_TIME_IN_DAYS” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
default_ddl_collation: Option<String>
Snowflake “DEFAULT_DDL_COLLATION” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
with_aggregation_policy: Option<ObjectName>
Snowflake “WITH AGGREGATION POLICY” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
with_row_access_policy: Option<RowAccessPolicy>
Snowflake “WITH ROW ACCESS POLICY” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
Snowflake “WITH TAG” clause https://docs.snowflake.com/en/sql-reference/sql/create-table
Trait Implementations§
Source§impl Clone for CreateTable
impl Clone for CreateTable
Source§fn clone(&self) -> CreateTable
fn clone(&self) -> CreateTable
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for CreateTable
impl Debug for CreateTable
Source§impl<'de> Deserialize<'de> for CreateTable
impl<'de> Deserialize<'de> for CreateTable
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for CreateTable
impl Display for CreateTable
Source§impl Hash for CreateTable
impl Hash for CreateTable
Source§impl Ord for CreateTable
impl Ord for CreateTable
Source§fn cmp(&self, other: &CreateTable) -> Ordering
fn cmp(&self, other: &CreateTable) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for CreateTable
impl PartialEq for CreateTable
Source§impl PartialOrd for CreateTable
impl PartialOrd for CreateTable
Source§impl Serialize for CreateTable
impl Serialize for CreateTable
Source§impl Visit for CreateTable
impl Visit for CreateTable
Source§impl VisitMut for CreateTable
impl VisitMut for CreateTable
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
impl Eq for CreateTable
impl StructuralPartialEq for CreateTable
Auto Trait Implementations§
impl Freeze for CreateTable
impl RefUnwindSafe for CreateTable
impl Send for CreateTable
impl Sync for CreateTable
impl Unpin for CreateTable
impl UnwindSafe for CreateTable
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)