기본적으로 JPA를 사용하면 update시 PK를 제외한 전체 컬럼을 업데이트 한다.


Oracle의 경우 테이블 파티션을 나누는데, 

파티션의 키가 되는 컬럼을 업데이트 할때 partition move가 되는 경우 오류가 발생한다.


개발DB는 보통 파티션을 하지 않거나, 파티션 무브를 허용하지만, 

운영DB는 보통 파티션 무브를 허용하지 않는다고 한다... 


운영파티션무브를 허용하거나, 

또는

Domain에 다음과 같이 어노테이션을 추가하여 변경된 컬럼만 업데이트 하도록 하여 해결하면 된다.

@org.hibernate.annotations.DynamicUpdate



@Entity

@org.hibernate.annotations.DynamicUpdate

public class Member {

@id

private long id;

private String name;

..

..

}


'java' 카테고리의 다른 글

Spring RestTemplate timeout 설정  (0) 2016.05.30
log4j 설정  (0) 2016.04.06
서버 Hostname 가져오기..  (0) 2016.03.09
Java 8 날짜 정리  (0) 2015.12.17
java.sql.SQLRecoverableException: IO Error: Connection reset 오류 해결  (0) 2015.11.30
Posted by 무세1
,