Sergey Nuyanzin created CALCITE-7208:
----------------------------------------

             Summary: Allow create or alter in parser
                 Key: CALCITE-7208
                 URL: https://issues.apache.org/jira/browse/CALCITE-7208
             Project: Calcite
          Issue Type: Improvement
          Components: core
            Reporter: Sergey Nuyanzin


Currently there is 
{code:sql}
    <CREATE> { s = span(); }
    [
        <OR> <REPLACE> {
            replace = true;
        }
    ]
{code}
in parser
https://github.com/apache/calcite/blob/9014934d8c24a5242a6840efe20134e820426c24/core/src/main/codegen/templates/Parser.jj#L4441-L4446
. 
And this disallows to have custom implementation in parser for other than 
{{CREATE OR REPLACE}} operations like {{CREATE OR ALTER}} (e.g. Snowflake 
dialect https://docs.snowflake.com/en/sql-reference/sql/create-or-alter) .

I see 2 options: either add one more {{lookahead}} and allow downstream project 
to have it or add it in Calcite and instead of {{boolean}} {{replace}} started 
having enum for that




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to