pub enum Set {
SingleAssignment {
scope: Option<ContextModifier>,
hivevar: bool,
variable: ObjectName,
values: Vec<Expr>,
},
ParenthesizedAssignments {
variables: Vec<ObjectName>,
values: Vec<Expr>,
},
MultipleAssignments {
assignments: Vec<SetAssignment>,
},
SetSessionParam(SetSessionParamKind),
SetRole {
context_modifier: Option<ContextModifier>,
role_name: Option<Ident>,
},
SetTimeZone {
local: bool,
value: Expr,
},
SetNames {
charset_name: Ident,
collation_name: Option<String>,
},
SetNamesDefault {},
SetTransaction {
modes: Vec<TransactionMode>,
snapshot: Option<Value>,
session: bool,
},
}Variants§
SingleAssignment
SQL Standard-style SET a = 1;
ParenthesizedAssignments
Snowflake-style SET (a, b, ..) = (1, 2, ..);
MultipleAssignments
MySQL-style SET a = 1, b = 2, ..;
Fields
§
assignments: Vec<SetAssignment>SetSessionParam(SetSessionParamKind)
MS-SQL session
See https://learn.microsoft.com/en-us/sql/t-sql/statements/set-statements-transact-sql
SetRole
SET [ SESSION | LOCAL ] ROLE role_nameSets session state. Examples: ANSI, Postgresql, MySQL, and Oracle
Fields
§
context_modifier: Option<ContextModifier>Non-ANSI optional identifier to inform if the role is defined inside the current session (SESSION) or transaction (LOCAL).
SetTimeZone
SET TIME ZONE <value>Note: this is a PostgreSQL-specific statements
SET TIME ZONE <value> is an alias for SET timezone TO <value> in PostgreSQL
However, we allow it for all dialects.
SetNames
SET NAMES 'charset_name' [COLLATE 'collation_name']SetNamesDefault
SET NAMES DEFAULTNote: this is a MySQL-specific statement.
SetTransaction
SET TRANSACTION ...Trait Implementations§
Source§impl<'de> Deserialize<'de> for Set
impl<'de> Deserialize<'de> for Set
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Ord for Set
impl Ord for Set
Source§impl PartialOrd for Set
impl PartialOrd for Set
Source§impl VisitMut for Set
impl VisitMut for Set
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
impl Eq for Set
impl StructuralPartialEq for Set
Auto Trait Implementations§
impl Freeze for Set
impl RefUnwindSafe for Set
impl Send for Set
impl Sync for Set
impl Unpin for Set
impl UnwindSafe for Set
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
Mutably borrows from an owned value. Read more