BEGIN is procedural SQL. We'd like to add it, but it has not been implemented. See https://issues.apache.org/jira/browse/CALCITE-4728.
On Wed, Oct 19, 2022 at 8:06 AM Nagaraj Tantri <[email protected]> wrote: > > Hi, > > We are trying to use Apache Calcite for one of our projects with the > following configuration, for BigQuery: > > public static SqlParser.Config createBqConfig() { > return SqlParser.config() > .withCaseSensitive(false) > .withLex(Lex.BIG_QUERY) > .withParserFactory(SqlParser.Config.DEFAULT.parserFactory()) > .withConformance(SqlConformanceEnum.DEFAULT) > .withQuoting(Quoting.DOUBLE_QUOTE) > .withConformance(SqlConformanceEnum.LENIENT) > .withUnquotedCasing(Casing.UNCHANGED) > .withQuotedCasing(Casing.UNCHANGED); > } > > But, unfortunately we see the below: > > ": parse failed: Incorrect syntax near the keyword 'BEGIN' at line 1, > column 1.Was expecting one of: > > "ABS" ... > "ALTER" ... > "ARRAY" ... > "AVG" ... > "CALL" ... > "CARDINALITY" ... > "CASE" ... > "CAST" ... > "CEIL" ... > "CEILING" ... > "CHAR_LENGTH" ... > "CHARACTER_LENGTH" ... > "CLASSIFIER" ... > "COALESCE" ... > "COLLECT" ... > "CONVERT" ... > "COUNT" ... > "COVAR_POP" ... > "COVAR_SAMP" ... > "CUME_DIST" ... > "CURRENT" ... > "CURRENT_CATALOG" ... > "CURRENT_DATE" ... > "CURRENT_DEFAULT_TRANSFORM_GROUP" ... > "CURRENT_PATH" ... > "CURRENT_ROLE" ... > "CURRENT_SCHEMA" ... > "CURRENT_TIME" ... > "CURRENT_TIMESTAMP" ... > "CURRENT_USER" ... > "CURSOR" ... > "DATE" ... > "DELETE" ... > "DENSE_RANK" ... > "DESCRIBE" ... > "ELEMENT" ... > "EVERY" ... > "EXISTS" ... > "EXP" ... > "EXPLAIN" ... > "EXTRACT" ... > "FALSE" ... > "FIRST_VALUE" ... > "FLOOR" ... > "FUSION" ... > "GROUPING" ... > "HOUR" ... > "INSERT" ... > "INTERSECTION" ... > "INTERVAL" ... > "JSON_ARRAY" ... > "JSON_ARRAYAGG" ... > "JSON_EXISTS" ... > "JSON_OBJECT" ... > "JSON_OBJECTAGG" ... > "JSON_QUERY" ... > "JSON_VALUE" ... > "LAG" ... > "LAST_VALUE" ... > "LEAD" ... > "LEFT" ... > "LN" ... > "LOCALTIME" ... > "LOCALTIMESTAMP" ... > "LOWER" ... > "MATCH_NUMBER" ... > "MAX" ... > "MERGE" ... > "MIN" ... > "MINUTE" ... > "MOD" ... > "MONTH" ... > "MULTISET" ... > "NEW" ... > "NEXT" ... > "NOT" ... > "NTH_VALUE" ... > "NTILE" ... > "NULL" ... > "NULLIF" ... > "OCTET_LENGTH" ... > "OVERLAY" ... > "PERCENT_RANK" ... > "PERIOD" ... > "POSITION" ... > "POWER" ... > "PREV" ... > "RANK" ... > "REGR_COUNT" ... > "REGR_SXX" ... > "REGR_SYY" ... > "RESET" ... > "RIGHT" ... > "ROW" ... > "ROW_NUMBER" ... > "RUNNING" ... > "SECOND" ... > "SELECT" ... > "SESSION_USER" ... > "SET" ... > "SOME" ... > "SPECIFIC" ... > "SQRT" ... > "STDDEV_POP" ... > "STDDEV_SAMP" ... > "SUBSTRING" ... > "SUM" ... > "SYSTEM_USER" ... > "TABLE" ... > "TIME" ... > "TIMESTAMP" ... > "TRANSLATE" ... > "TRIM" ... > "TRUE" ... > "TRUNCATE" ... > "UNKNOWN" ... > "UPDATE" ... > "UPPER" ... > "UPSERT" ... > "USER" ... > "VALUES" ... > "VAR_POP" ... > "VAR_SAMP" ... > "WITH" ... > "YEAR" ... > <UNSIGNED_INTEGER_LITERAL> ... > <APPROX_NUMERIC_LITERAL> ... > <DECIMAL_NUMERIC_LITERAL> ... > <BINARY_STRING_LITERAL> ... > <QUOTED_STRING> ... > <PREFIXED_STRING_LITERAL> ... > <UNICODE_STRING_LITERAL> ... > <BIG_QUERY_DOUBLE_QUOTED_STRING> ... > <BIG_QUERY_QUOTED_STRING> ... > "(" ... > <LBRACE_D> ... > <LBRACE_T> ... > <LBRACE_TS> ... > <LBRACE_FN> ... > "?" ... > "+" ... > "-" ... > <BRACKET_QUOTED_IDENTIFIER> ... > <QUOTED_IDENTIFIER> ... > <BACK_QUOTED_IDENTIFIER> ... > <HYPHENATED_IDENTIFIER> ... > <IDENTIFIER> ... > <UNICODE_QUOTED_IDENTIFIER> ... > > at org.apache.calcite.avatica.Helper.createException(Helper.java:56) > > > Can someone please assist with this error? > > Its mentioned here that its available for use: > https://calcite.apache.org/docs/reference.html > > Regards, > Nagaraj
