Из конфига есть несколько вариантов, \"
, [
и т.д.
Однако может ли кальцит анализировать идентификаторы без кавычек? как
select * from a.b
?
Теперь я должен написать
select * from \"a\".\"b\"
и это как-то раздражает.
Из конфига есть несколько вариантов, \"
, [
и т.д.
Однако может ли кальцит анализировать идентификаторы без кавычек? как
select * from a.b
?
Теперь я должен написать
select * from \"a\".\"b\"
и это как-то раздражает.
Кавычки никогда не требуются, но вам может понадобиться изменить то, как Calcite обрабатывает регистр идентификаторов в зависимости от вашего приложения. По умолчанию идентификаторы без кавычек преобразуются в верхний регистр, а идентификаторы в кавычках остаются без изменений. Поэтому, если у вас есть идентификаторы в нижнем регистре, они должны быть заключены в кавычки по умолчанию.
Чтобы изменить это поведение, вам нужно изменить конфигурацию, которую вы передаете SqlParser
, чтобы случай идентификаторов без кавычек также не изменился.
SqlParser.Config = SqlParser.configBuilder().setUnquotedCasing(Casing.Unchanged);
SqlParser parser = SqlParser.create(/* what you're parsing here */, config);