Enum sqlite3_parser::ast::Stmt
source · [−]pub enum Stmt {
Show 25 variants
AlterTable(QualifiedName, AlterTableBody),
Analyze(Option<QualifiedName>),
Attach {
expr: Expr,
db_name: Expr,
key: Option<Expr>,
},
Begin(Option<TransactionType>, Option<Name>),
Commit(Option<Name>),
CreateIndex {
unique: bool,
if_not_exists: bool,
idx_name: QualifiedName,
tbl_name: Name,
columns: Vec<SortedColumn>,
where_clause: Option<Expr>,
},
CreateTable {
temporary: bool,
if_not_exists: bool,
tbl_name: QualifiedName,
body: CreateTableBody,
},
CreateTrigger {
temporary: bool,
if_not_exists: bool,
trigger_name: QualifiedName,
time: Option<TriggerTime>,
event: TriggerEvent,
tbl_name: QualifiedName,
for_each_row: bool,
when_clause: Option<Expr>,
commands: Vec<TriggerCmd>,
},
CreateView {
temporary: bool,
if_not_exists: bool,
view_name: QualifiedName,
columns: Option<Vec<IndexedColumn>>,
select: Select,
},
CreateVirtualTable {
if_not_exists: bool,
tbl_name: QualifiedName,
module_name: Name,
args: Option<String>,
},
Delete {
with: Option<With>,
tbl_name: QualifiedName,
indexed: Option<Indexed>,
where_clause: Option<Expr>,
returning: Option<Vec<ResultColumn>>,
order_by: Option<Vec<SortedColumn>>,
limit: Option<Limit>,
},
Detach(Expr),
DropIndex {
if_exists: bool,
idx_name: QualifiedName,
},
DropTable {
if_exists: bool,
tbl_name: QualifiedName,
},
DropTrigger {
if_exists: bool,
trigger_name: QualifiedName,
},
DropView {
if_exists: bool,
view_name: QualifiedName,
},
Insert {
with: Option<With>,
or_conflict: Option<ResolveType>,
tbl_name: QualifiedName,
columns: Option<Vec<Name>>,
body: InsertBody,
returning: Option<Vec<ResultColumn>>,
},
Pragma(QualifiedName, Option<PragmaBody>),
Reindex {
obj_name: Option<QualifiedName>,
},
Release(Name),
Rollback {
tx_name: Option<Name>,
savepoint_name: Option<Name>,
},
Savepoint(Name),
Select(Select),
Update {
with: Option<With>,
or_conflict: Option<ResolveType>,
tbl_name: QualifiedName,
indexed: Option<Indexed>,
sets: Vec<Set>,
from: Option<FromClause>,
where_clause: Option<Expr>,
returning: Option<Vec<ResultColumn>>,
order_by: Option<Vec<SortedColumn>>,
limit: Option<Limit>,
},
Vacuum(Option<Name>, Option<Expr>),
}Variants
AlterTable(QualifiedName, AlterTableBody)
Analyze(Option<QualifiedName>)
Attach
Begin(Option<TransactionType>, Option<Name>)
Commit(Option<Name>)
CreateIndex
Fields
unique: boolif_not_exists: boolidx_name: QualifiedNametbl_name: Namecolumns: Vec<SortedColumn>CreateTable
CreateTrigger
Fields
temporary: boolif_not_exists: booltrigger_name: QualifiedNametime: Option<TriggerTime>event: TriggerEventtbl_name: QualifiedNamefor_each_row: boolcommands: Vec<TriggerCmd>CreateView
Fields
temporary: boolif_not_exists: boolview_name: QualifiedNamecolumns: Option<Vec<IndexedColumn>>select: SelectCreateVirtualTable
Delete
Fields
tbl_name: QualifiedNamereturning: Option<Vec<ResultColumn>>order_by: Option<Vec<SortedColumn>>Detach(Expr)
DropIndex
DropTable
DropTrigger
DropView
Insert
Fields
or_conflict: Option<ResolveType>tbl_name: QualifiedNamebody: InsertBodyreturning: Option<Vec<ResultColumn>>Pragma(QualifiedName, Option<PragmaBody>)
Reindex
Fields
obj_name: Option<QualifiedName>Release(Name)
Rollback
Savepoint(Name)
Select(Select)
Update
Fields
or_conflict: Option<ResolveType>tbl_name: QualifiedNamefrom: Option<FromClause>returning: Option<Vec<ResultColumn>>order_by: Option<Vec<SortedColumn>>Vacuum(Option<Name>, Option<Expr>)
Trait Implementations
impl Eq for Stmt
impl StructuralEq for Stmt
impl StructuralPartialEq for Stmt
Auto Trait Implementations
impl RefUnwindSafe for Stmt
impl Send for Stmt
impl Sync for Stmt
impl Unpin for Stmt
impl UnwindSafe for Stmt
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more