#[non_exhaustive]pub enum ProcedureForm {
PlPgSql,
MySql,
TSql,
SnowflakeScripting,
Databricks,
ClickHouse,
GoogleSql,
Agnostic,
Unsupported(&'static str),
}Expand description
Which stored-procedure grammar this engine speaks.
The default is ProcedureForm::Agnostic, Razeri’s own annotated form. It
parses nowhere: it is the honest answer for a dialect that has not said, and
the conformance kit reports it as an unanswered obligation.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
PlPgSql
PL/pgSQL — a dollar-quoted body with DECLARE, SELECT … INTO,
RAISE, IF and an EXCEPTION block. PostgreSQL, Citus and
Redshift, all three measured deploying and running.
MySql
MySQL/MariaDB’s compound statement — the same block structure with
DELIMITER-free BEGIN … END and no dollar quoting.
TSql
T-SQL — CREATE PROCEDURE … AS BEGIN … END, @-prefixed parameters.
SnowflakeScripting
Snowflake Scripting.
Databricks
Databricks SQL scripting.
ClickHouse
ClickHouse.
GoogleSql
GoogleSQL scripting — BigQuery’s, whose body is not quoted at all.
Agnostic
Razeri’s agnostic annotated form: ANSI SQL carrying @razeri: headers.
It is a design artifact, not something an engine parses.
Unsupported(&'static str)
This engine has no stored procedures. The string is the orientation
an author reads instead of a syntax error — say what this engine offers
in their place (DuckDB’s macros, SQLite’s application-level logic),
because the sentence that helps is the one about this engine.
Trait Implementations§
Source§impl Clone for ProcedureForm
impl Clone for ProcedureForm
Source§fn clone(&self) -> ProcedureForm
fn clone(&self) -> ProcedureForm
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more