Hi,

I created a maven project and used 1.22.0 Calcite artifacts to make your
code work: https://github.com/amaliujia/CalciteParser. Does this work for
you?


-Rui

On Fri, Jun 26, 2020 at 12:44 PM Subin Lee <[email protected]>
wrote:

> Hello!
>
> I hope this email finds you well. My name is Subin and I am an intern at
> Google trying to utilize the Calcite Parser.
>
> In trying to use the parser, I've been a bit struggling on how to leverage
> the code in the Calcite code base through java. Essentially, I want to use
> Calcite's Sql Parser and use it to parse a query. Below is an attempt that
> I've made but it doesn't seem to be working: how should I set up my coding
> environment in order to leverage all the code? Should I make the entire
> Calcite repo code into a jar file, include it in my directory, and then
> import from there?
>
> Let me know what you think. Thank you for your time :)
>
> Best,
> Subin
>
> class ParserExample {
>   public static void main(String[] args) {
>     String query1 = "SELECT * FROM (SELECT a FROM abc)";
>
>     // sets configuration of the parser
>     SqlParser.Config config = getParserConfig(SqlBabelParserImpl.FACTORY);
>
>     SqlParser myParser = SqlParser.create(query1, config);
>     SqlNode sqlNode = myParser.parseStmt();
>     SqlString sqlNode.toSqlString(CalciteSqlDialect.DEFAULT);
>     Syss
>   }
>
>   protected SqlParser.Config getParserConfig(SqlParserImplFactory factory {
>     return SqlParser.configBuilder()
>         .setParserFactory(factory)
>         .setQuotedCasing(Casing.UNCHANGED)
>         .setUnquotedCasing(Casing.UNCHANGED)
>         .setQuoting(Quoting.DOUBLE_QUOTE)
>         .build();
>   }
> }
>

Reply via email to