这是我正在使用的查询:
@NamedQuery(name="pacchettoPreconfigurato.findVendibileByData", query="SELECT p FROM PacchettoPreconfigurato p WHERE p.in_vendita=TRUE AND (:data) IN (p.date_possibili)")
现在,当我尝试在服务器的日志中部署应用程序时,我得到:
Exception Description: Problem compiling [SELECT p FROM PacchettoPreconfigurato p WHERE p.in_vendita=TRUE AND (:data) IN (p.date_possibili)]. [81, 97] The state field path 'p.date_possibili' cannot be resolved to a collection type.
这是p.date_possibili的定义方式:
@OneToMany(orphanRemoval=true)
@JoinColumn(name="id_pp")
private List date_possibili;
DataPossibilePP的位置是:
@Entity
@IdClass(DataPossibilePPPK.class)
public class DataPossibilePP implements Serializable {
@Id
private Integer id_pp;
@Id
private Date data;
private static final long serialVersionUID = 1L;
/*standard getters and setters*/
}
我不明白为什么我被告知该字段不是一个集合,即使它被定义为一个列表而Eclipse本身也在其自动完成中暗示它.
我怎么能编写查询以便编译?
本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/jpa-jpqlwufajiangziduanlujingjiexiweijihelei.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:11 月 9, 2019 at 08:23 下午