【发布时间】:2020-02-24 22:40:46
【问题描述】:
从配置中有几个选项,\"、[ 等。
但是,方解石可以解析不带引号的标识符吗?喜欢
select * from a.b?
现在我必须写
select * from \"a\".\"b\"
这有点烦人。
【问题讨论】:
标签: apache-calcite
从配置中有几个选项,\"、[ 等。
但是,方解石可以解析不带引号的标识符吗?喜欢
select * from a.b?
现在我必须写
select * from \"a\".\"b\"
这有点烦人。
【问题讨论】:
标签: apache-calcite
从不需要引号,但您可能需要更改 Calcite 处理标识符大小写的方式,具体取决于您的应用程序。默认情况下,不带引号的标识符被转换为大写,带引号的标识符保持不变。所以如果你有小写的标识符,他们需要被默认引用。
要更改此行为,您需要修改传递给 SqlParser 的配置,以便不带引号的标识符的大小写也保持不变。
SqlParser.Config = SqlParser.configBuilder().setUnquotedCasing(Casing.Unchanged);
SqlParser parser = SqlParser.create(/* what you're parsing here */, config);
【讨论】: