pub struct CreateView {
pub name: Slice,
pub columns: Slice,
pub query: QueryRef,
pub sql: StrRef,
pub if_not_exists: bool,
pub or_replace: bool,
pub temporary: bool,
}Expand description
CREATE VIEW name (columns) AS query.
The body is kept twice over, as a bound reference into this same arena and as the text that was
written. Both are needed and they are needed for different things. The reference is what binds
the body at creation, which is where a view over a table that is not there is refused. The text
is what the catalog keeps, because a view is bound again at every reference rather than frozen
at creation: a view over SELECT * FROM t follows t when a column is added to it, which was
measured, and the only way to follow it is to have the query to bind again.
Fields§
§name: SliceThe view name, as a run of Slice parts, outermost first.
columns: SliceThe column aliases, as a run of parts, empty when the statement wrote no list.
query: QueryRefThe body.
sql: StrRefThe body as it was written, which is what the catalog keeps.
if_not_exists: boolWhether IF NOT EXISTS was written.
or_replace: boolWhether OR REPLACE was written.
temporary: boolWhether TEMP or TEMPORARY was written.
Trait Implementations§
Source§impl Clone for CreateView
impl Clone for CreateView
Source§fn clone(&self) -> CreateView
fn clone(&self) -> CreateView
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more