我正在运行此查询:
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)。有什么想法吗?
答案 0 :(得分:1)
您是否尝试过使用日期时间?日期,时间和日期时间都作为日期时间存储在内部; Java SDK可能不会为您实现此自动转换。
答案 1 :(得分: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);
答案 2 :(得分:1)
我建议您将所有日期存储为Long,并在执行查询之前在静态日期执行转换。