SqlQuery在Ignite 2.0.0中引发异常
我刚刚升级到V2.0.0,并尝试了以下代码SqlQuery在Ignite 2.0.0中引发异常,ignite,Ignite,我刚刚升级到V2.0.0,并尝试了以下代码 SqlQuery diffSql = new SqlQuery(PendingAvGroup.class, " from PendingAvGroup as pnd " + "where not exists(select 1 from " + "\"Processed_PendingAvGroup_cache\".PendingAvGroup prc " + " WHERE prc.resourceGroup
SqlQuery diffSql = new SqlQuery(PendingAvGroup.class,
" from PendingAvGroup as pnd " +
"where not exists(select 1 from " +
"\"Processed_PendingAvGroup_cache\".PendingAvGroup prc " +
" WHERE prc.resourceGroupId = pnd.resourceGroupId)"
);
但是我得到了以下错误
由以下原因引起:org.h2.jdbc.JdbcSQLException:未找到列挂起_PendingAvGroup_cache.PendingAvGroup._键;
SQL语句:
选择Pending_PendingAvGroup_cache.PendingAvGroup._key,Pending_PendingAvGroup_cache.PendingAvGroup._valfrom PendingAvGroup as pnd where not exists从Processed_PendingAvGroup_cache.PendingAvGroup prc where prc.resourcegroup id=pnd.resourcegroup id[42122-195]
在org.h2.message.DbException.getJdbcSQLExceptionDbException.java:345~[h2-1.4.195.jar:1.4.195]
似乎每当我提供FROM子句时,我都会得到“.\u KEY not found;”错误即使是一张桌子
我非常感谢任何人在这方面的帮助。。
谢谢
Paul这实际上是SQL的一个奇怪的东西,我不确定它是一个标准还是仅仅是H2。默认情况下,Ignite在select子句Pending_PendingAvGroup_cache.PendingAvGroup中使用原始表名生成查询,但它必须实际使用别名pnd 要解决此问题,必须在SqlQuery上设置别名,Ignite将生成正确的查询: SqlQuery diffSql=新的SqlQueryPendingAvGroup.class,…setAliaspnd 另一个选项是使用SqlFieldsQuery: 新建SqlFieldsQueryselect _键,_valfrom