준준의 기록일지

[JPA, MSSQL] varchar와 nvarchar의 차이 및 String -> NVARCHAR 형변환 방법 본문

스프링

[JPA, MSSQL] varchar와 nvarchar의 차이 및 String -> NVARCHAR 형변환 방법

junjunwon 2021. 11. 22. 10:50

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."




varchar와 nvarchar의 차이

 

  • varchar는 영문 데이터형과 테이블에 설정된 기본 언어 타입을 저장할때 사용한다.
  • nvarchar는 유니코드 지원을 위한 데이터형이다. nvarchar는 varchar보다 동일 데이터 저장시 공간을 2배 사용하며, 다국어 지원이 필요한 DB 작업일 경우에 적당한 데이터형이다.
  • DB 설계 단계에서 향후 다국어를 지원할 일이 조금이라도 있을 것 같다면 처음부터 nvarchar, nchar, ntext 를 사용하여 구조를 만들어두시는 것이 좋다.




 

String -> NVARCHAR 형변환 방법

특정 엔티티에서 String 데이터 타입을 mssl database에 nvarchar 데이터 타입으로 매핑하고 싶을 경우 두가지 방법이 있다.

 

1. 어노테이션 사용

import org.hibernate.annotations.Nationalized;
@Nationalized

 

2. column 데이터 타입 정의

@Column(name = "user_name", columnDefinition = "NVARCHAR(50)")
private String userName = null;

 

출처: https://afgman4.tistory.com/entry/varchar-와-nvarchar의-차이 [은밀한 블로그 -_-+]