2

我正在运行这个查询:

SELECT FROM com.Data WHERE entryDate > DATE('2010-3-16')

我收到此错误:

org.datanucleus.store.appengine.query.DatastoreQuery$UnsupportedDatastoreFeatureException:查询 DATE('2010-3-16')> 出现问题:解析表达式时方法不受支持:InvokeExpression{[null].DATE(Literal{2010-3-16) })}

当我在管理控制台上使用它时,同样的查询有效。但它不适用于代码(java),无论是在本地还是在部署时。有任何想法吗?

4

3 回答 3

1

我建议将所有日期存储为 Long 并在执行查询之前在静态日期执行转换。

于 2010-04-17T15:16:28.863 回答
1

您是否尝试过使用日期时间?日期、时间和日期时间都在内部存储为日期时间;Java SDK 可能没有为您实现这种自动转换。

于 2010-04-15T14:38:59.023 回答
1

我有同样的问题

尝试 :

Query query = pm.newQuery("select from com.Data where entryDate > myDate");
query.declareImports("import java.util.Date");
query.declareParameters("Date myDate");
query.execute(now);
于 2010-04-17T15:11:01.747 回答