Thanks to visit codestin.com
Credit goes to docs.rs

sqlmo/query/
create_table.rs

1use crate::util::SqlExtension;
2use crate::{Column, Dialect, Table, ToSql};
3
4/// Create table action
5#[derive(Debug, Clone, PartialEq, Eq)]
6pub struct CreateTable {
7    pub schema: Option<String>,
8    pub name: String,
9    pub columns: Vec<Column>,
10}
11
12impl CreateTable {
13    pub fn from_table(table: &Table) -> CreateTable {
14        CreateTable {
15            schema: table.schema.clone(),
16            name: table.name.clone(),
17            columns: table.columns.clone(),
18        }
19    }
20}
21
22impl ToSql for CreateTable {
23    fn write_sql(&self, buf: &mut String, dialect: Dialect) {
24        buf.push_str("CREATE TABLE ");
25        buf.push_table_name(&self.schema, &self.name);
26        buf.push_str(" (\n");
27        buf.push_sql_sequence(&self.columns, ",\n", dialect);
28        buf.push_str("\n)");
29    }
30}