问题描述
我使用的是光束 2.19。当我尝试解析一些包含 CREATE EXTERNAL TABLE 的 BEAM sql 时:
String sql = "CREATE EXTERNAL TABLE ext_table (value INTEGER) TYPE text LOCATION "
+ "'ext_table.csv' TBLPROPERTIES '{\"format: \"Excel\"}';\n"
+ "SELECT * ext_table;";
final sqlParser.ConfigBuilder configBuilder =
sqlParser.configBuilder()
.setQuoting(Quoting.BACK_TICK)
.setUnquotedCasing(Casing.UNCHANGED)
.setQuotedCasing(Casing.UNCHANGED);
final sqlParser.Config config = configBuilder.build();
sqlParser parser = sqlParser.create(sql,config);
sqlNode rootNode = parser.parseQuery();
System.out.println(rootNode.toString());
我收到此异常。
java.lang.RuntimeException: org.apache.calcite.sql.parser.sqlParseException: Encountered "CREATE" at line 1,column 1.
Was expecting one of:
"ABS" ...
"ALTER" ...
"ARRAY" ...
....etc
所以我想知道解析带有外部表声明的 sql 的正确方法是什么。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)