use crate::{
ast::{CreateDatabaseStmt, session::database_session::UseDatabaseStmt},
common::symbol::Symbol,
};
#[derive(Debug, Clone, PartialEq)]
pub struct BoundCreateDatabaseStmt {
pub name: Symbol,
pub if_not_exists: bool,
pub owner: Symbol,
pub encoding: Option<Symbol>,
pub locale: Option<Symbol>,
pub tablespace: Option<Symbol>,
pub connection_limit: Option<i64>,
}
#[derive(Debug, Clone, PartialEq)]
pub struct BoundUseDatabaseStmt {
pub database_name: Symbol,
}
impl From<BoundCreateDatabaseStmt> for CreateDatabaseStmt {
fn from(b: BoundCreateDatabaseStmt) -> Self {
CreateDatabaseStmt {
name: b.name,
if_not_exists: b.if_not_exists,
owner: Some(b.owner), encoding: b.encoding,
locale: b.locale,
tablespace: b.tablespace,
connection_limit: b.connection_limit,
}
}
}
impl From<BoundUseDatabaseStmt> for UseDatabaseStmt {
fn from(b: BoundUseDatabaseStmt) -> Self {
UseDatabaseStmt {
database_name: b.database_name,
}
}
}