[java] Hibernate에서 데이터베이스 데이터 유형(Type) 변경하는 방법은?
-
엔티티 클래스를 열어서 변경하고 싶은 필드를 찾습니다.
-
해당 필드 위에
@Column
어노테이션을 추가합니다. -
@Column
어노테이션에서columnDefinition
속성을 사용하여 새로운 데이터 유형을 지정합니다. 데이터 유형은 데이터베이스에 맞게 정확하게 지정해야 합니다.
예를 들어, name
필드의 데이터 유형을 VARCHAR(100)에서 VARCHAR(200)으로 변경하려면 다음과 같이 코드를 수정합니다:
@Entity
@Table(name = "my_table")
public class MyEntity {
//...
@Column(columnDefinition = "VARCHAR(200)")
private String name;
//...
}
위의 예제에서는 @Column
어노테이션의 columnDefinition
속성을 사용하여 name
필드의 데이터 유형을 변경하였습니다. 이렇게 하면 Hibernate가 데이터베이스 스키마를 업데이트할 때 변경된 데이터 유형이 적용됩니다.
변경된 데이터 유형에 맞게 Hibernate가 데이터베이스 스키마를 업데이트할 수 있도록 설정해야 합니다. 이를 위해서는 Hibernate의 hibernate.hbm2ddl.auto
속성을 사용하여 자동 스키마 업데이트를 활성화할 수 있습니다. 예를 들어, update
값을 설정하여 Hibernate가 변경된 엔티티 클래스를 기반으로 스키마 업데이트를 수행하도록 설정할 수 있습니다.
hibernate.hbm2ddl.auto = update
위의 설정을 hibernate.cfg.xml
파일에 추가하면 Hibernate가 변경된 데이터 유형이 적용된 스키마를 자동으로 업데이트합니다.
참고 문서: