[
https://issues.apache.org/jira/browse/CALCITE-2310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16476459#comment-16476459
]
Julian Hyde commented on CALCITE-2310:
--------------------------------------
Makes sense. It would need to be in the "server" or "babel" parser, because the
regular parser does not support DDL.
Sequences of statements begin to look like PL/SQL. So, should we instead parse
a block:
{code}
BEGIN
statement;
...
statement;
END
{code}
You can add BEGIN and END before parsing.
> SqlParser parse multiple sql statements split by semicolon
> ----------------------------------------------------------
>
> Key: CALCITE-2310
> URL: https://issues.apache.org/jira/browse/CALCITE-2310
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Reporter: Fei Xu
> Assignee: Julian Hyde
> Priority: Minor
>
> Current, SqlParser only supports parse single sql statement to single
> SqlNode. But since we have server module, and support DDL syntax, It is
> common to write DDL statement and DML statement together to build a complete
> logic.
> For example:
> * Table orders is a source table;
> * Table output_console is a sink table;
> * Read data from source table, do some project and filter, then write to
> sink table.
> {code:java}
> CREATE TABLE orders (
> createTime TIMESTAMP,
> productId bigint,
> orderId bigint,
> units bigint,
> user_name VARCHAR
> );
> CREATE TABLE output_console(
> createTime TIMESTAMP,
> productId bigint,
> orderId bigint,
> units bigint,
> user_name VARCHAR
> );
> INSERT INTO output_console
> SELECT
> createTime,
> productId,
> orderId,
> units,
> user_name
> FROM orders
> WHERE (productId>3) AND (productId<8);
> {code}
> So, I think it really helps if SqlParser support parse multiple sql
> statements.
>
>
>
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)