2011-10-19 4 views
4

JPA와 최대 절전 모드 및 Oracle DB (oracle 11.2 xe)를 사용하고 있습니다. 큰 숫자를 저장하려고하는데 DB에 저장된 내용이 입력 한 큰 번호가 아닙니다.BigDecimal이 JPA를 사용하여 DB에 올바르게 저장되지 않았습니다.

@Column(name = "INVOICE_AMOUNT", precision = 25, scale = 2, nullable = false) 
private BigDecimal amount; 

DB에 컬럼이 다음과 같이 작성 :

INVOICE_AMOUNT NUMBER(25,2) DEFAULT 0 NOT NULL, 

문제는 때이다 나는이 같은 매핑 큰 진수를 저장할 위치를

나는 열이 "19999979998000000"이라는 숫자를 저장하려고합니다. 나는를 지속 할 바로 전에 나는 필드를 디버깅과는 말한다 :

amount = {[email protected]}"1.9999979998E+16" 

그러나 DB에서 20 저장되는 값

...

버전 :

jpa 1.0 
hibernate-3.2.6.ga.jar 
jboss-4.2.3.GA 

무엇 오전 내가 잘못하고있어?

답변

2

ojdbc14 버전 10.2.0.5로 업그레이드하면 문제가 해결됩니다 (10.2.0.4에서 수정 됨).

관련 문제