在 Apache Ignite 中禁用 SQL 转义



我试过了

CacheConfiguration<?, ?> cacheCfg = new CacheConfiguration<>(cacheTemplateName).setSqlSchema("PUBLIC"); //create table can only be executed on public schema
cacheCfg.setSqlEscapeAll(false); //otherwise ignite tries to quote after we've quoted and there are cases we have to quote before ignite gets it
cacheCfg.setCacheMode(CacheMode.PARTITIONED);
ignite.addCacheConfiguration(cacheCfg); //required to register cacheTemplateName as a template, see WITH section of https://apacheignite-sql.readme.io/docs/create-table

不幸的是,我尝试的任何东西似乎都不起作用。 我已经调试了,isSqlEscapeAll()总是返回 true。 仅供参考,在我设置TEMPLATE=MyTPLNameCREATE TABLE声明中.

是否可以禁用此行为?我的查询已经被适当引用了。

此标志不适用于动态缓存,因为它可能会导致表名出现一些不清楚,这在 Ignite 开发列表的此线程中进行了描述: http://apache-ignite-developers.2346864.n4.nabble.com/Remove-deprecate-CacheConfiguration-sqlEscapeAll-property-td17966.html

顺便问一下,你想用这个标志解决什么问题?

最新更新