본문 바로가기

JavaFX

[JavaFX] JPA Hibernate JDBC-90611:Specified column name was not found. - 컬럼명

JDBC-90611:Specified column name was not found. - column name

org.hibernate.exception.GenericJDBCException: could not execute query

    at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:54)

    ...

 

public class UserVO {
  @Id
  @Column(name = "ID")
  private String id;
  @Column(name = "NAME")
  private String name;
  @Column(name = "AGE")
  private String age;
}
public List<UserVO> getUser(String id) {
  StringBuffer sql = new StringBuffer();
  sql.append(" SELECT \n");
  sql.append(" ID, NAME \n");
  sql.append(" FROM USER U \n");
  sql.append(" LEFT JOIN ADR A ON U.ID = A.ID \n");
  
  SQLQuery sqlQuery = getSession().createSQLQuery(sql.toString());
  sqlQuery.addEntity(UserVO.class);
  
  return sqlQuery.list();
}

 

sql 쿼리문을 직접 사용할 때 발생하는 에러

sql 쿼리를 직접 사용할 경우 SELECT 문에 UserVO의 모든 컬럼값을 다 조회해야 되는 듯 하다.

SELECT ID, NAME, AGE