尽管查询正确,仍会出现InvalidQueryException

时间:2018-05-16 06:56:53

标签: java cassandra resultset

我使用的SpringBoot与Hibernate和Cassandra数据库一致。我使用ResultSet制作了几个方法,到目前为止一切都很完美。我创建另一个方法,创建查询,然后创建ResultSet。

 $data = $this->client->__soapCall('RetrieveCollection', [$requestData]);
 return $this->client->__getLastResponse();

它抛出了我:

String queryString = query.toString().replace("?", dayList.toString());
ResultSet rS = dataSource.executeQuery(queryString);

查询是正确的。当我在数据库中执行查询时,它会返回正确的数据。

这很奇怪,因为我在之前的方法中使用相同的实现并且它可以工作。

这是我的问题:

com.datastax.driver.core.exceptions.InvalidQueryException: No keyspace has been specified. USE a keyspace, or explicitly specify keyspace.tablename

1 个答案:

答案 0 :(得分:2)

正确的查询应该是这样的: SELECT * FROM KEYSPACE_NAME.object_action_statistics WHERE day IN ('2018-04-29','2018-04-30') AND action_id=14 AND timestamp_from>=1525099500073 AND timestamp_from<1525120897000 ALLOW FILTERING 我猜你忘了把键空间名称放在表名前面。