0
나는 Hibernate에서 다음 질의를 실행하고 DB에서이 값들이 다른 경우 반환 된 객체 배열의 위치 2와 3에서 동일한 값을 갖는다. 데이터베이스는 Oracle이고 Hibernate는 버전 3.2.6이다. 이것은 프로덕션에서만 발생하며 특정 고객 (WebSphere 사용), dev 및 기타 고객은 정상적으로 작동합니다.Hibernate가 배열에 중복 된 열을 반환한다.
String sql = " SELECT acc.account_code," +
" acct.description, " +
" (SELECT SUM(item_amount)" +
" FROM gem_book_entry_item bi, gem_document d" +
" WHERE account_id = acc.dboid AND " +
" account_sign = 1 AND " +
" bi.document_id = d.dboid AND " +
" d.state_id = :definitive AND " +
" (d.internal_reference IS NULL OR d.internal_reference NOT IN (:references)) AND " +
" d.posting_approval_date <= :refDate" +
" ) ," +
" (SELECT SUM(item_amount)" +
" FROM gem_book_entry_item bi, gem_document d" +
" WHERE account_id = acc.dboid AND " +
" account_sign = -1 AND " +
" bi.document_id = d.dboid AND " +
" d.state_id = :definitive AND " +
" (d.internal_reference IS NULL OR d.internal_reference NOT IN (:references)) AND " +
" d.posting_approval_date <= :refDate" +
" ) ," +
" acc.init_balance" +
" FROM gem_account acc, gem_account_t acct " +
" WHERE acc.dboid = acct.dboid AND " +
" acc.institution_id = :institutionId AND " +
" acc.period_code = :periodCode AND " +
" acct.lang = :langId " ;
PROD에서 수동으로 쿼리를 실행 했습니까? – Vitaly
네, 그랬지만 작동했지만, 오라클 클라이언트를 사용하는 C++ 클라이언트를 사용했습니다. JDBC 드라이버의 버그라고 생각합니다. –