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

Reply via email to