java - DataNucleus GAE JPQL 与 JPA1 标准不同吗?

标签 java jpa google-cloud-datastore jpql datanucleus

Query q = em.createQuery("SELECT u FROM SSUser u WHERE u.emailId=?1")
    .setParameter(1, email);

我认为这将是一个有效的查询,但后来我得到:

No results for query: SELECT FROM SSUser u WHERE u.emailId=?1

表达此查询的正确方式是什么?

最佳答案

此查询是正确的,但位置参数当前在 GAE/J 中已损坏。这是问题 128 :位置参数不起作用(JPQL)。解决方法:使用命名参数。

Query q = em.createQuery("SELECT u FROM SSUser u WHERE u.emailId = :email")
    .setParameter("email", email);

关于java - DataNucleus GAE JPQL 与 JPA1 标准不同吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3466005/

相关文章:

google-app-engine - 如何始终从 Google Cloud Datastore 读取最新的实体

Java Swing : Having Multiple Colors in One JProgressBar

java - 带有无用堆栈跟踪的异常

java - 在 Java 中赋值?

java - 基于包含 MappedSuperclass 的元模型的 JPA EntityGraph 不可能吗?

java - 是否可以并行初始化多个惰性集合?

google-app-engine - 高效查询策略 : keys only query + memcache in appengine?

java - org.datanucleus.store.query.QueryCompilerSyntaxException : Identifier expected at character 12 in "u.username== value"

java - 在调用可能引发异常的方法时,有什么方法可以避免 try/catch block 吗?

java - 无法使用 Hibernate 删除具有@OneToMany 关系的父 JPA 实体