【发布时间】:2016-01-26 13:35:05
【问题描述】:
我希望字段idEmpresa 成为@Formula 字段,在WHERE 语句中使用idDepartamento(即另一个@Formula 字段)。
@Entity
public class CfgUsuario {
//More fields
private String idDepartamento;
private String idEmpresa;
@Formula("(SELECT ud.IdDepartamento FROM UsuarioDpto ud WHERE ud.PorDefecto = 'S' AND ud.IdUsuario = idUsuario)")
public String getIdDepartamento() {
return idDepartamento;
}
public void setIdDepartamento(String idDepartamento) {
this.idDepartamento = idDepartamento;
}
@Formula("(SELECT d.IdEmpresa FROM Departamento d WHERE d.IdDepartamento = idDepartamento)")
public String getIdEmpresa() {
return idEmpresa;
}
public void setIdEmpresa(String idEmpresa) {
this.idEmpresa = idEmpresa;
}
}
但我明白了:
javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException:列名“idDepartamento”无效。
【问题讨论】: