Open Source RDBMS - Seamless, Scalable, Stable and Free

한국어 | Login |Register

Versions available for this page: CUBRID 8.2.1 |  CUBRID 8.3.0 |  CUBRID 8.3.1 |  CUBRID 8.4.0 |  CUBRID 8.4.1 |  CUBRID 8.4.3 |  CUBRID 9.0.0 | 

NCHAR(n)

설명

NCHAR(n)는 영어권 외 국가에서 문자열을 저장할 때 사용할 수 있는 타입이다. n은 문자의 개수를 나타내며, n이 생략되면 길이는 기본값 1로 지정된다.

문자열의 길이가 n을 초과하면 초과 부분을 절삭한다. n보다 작은 문자열이 저장되면 나머지 부분이 공백 문자로 채워진다.

국가 문자열 타입에 한글을 저장하기 위해서는 테이블 생성 이전에, 운영 체제의 로캘(locale)을 korean으로 설정하거나 CUBRID_LANG 환경 변수의 값을 ko_KR.euckr로 설정해야 한다.

NCHAR(n)와 NATIONAL CHAR(n), 그리고 NATIONAL CHARACTER(n)는 같은 의미로 사용된다.

참고 CUBRID 9.0 이상 버전에서는 로캘 설정에 따른 문자셋과 콜레이션을 지원하므로, 이 타입을 사용하지 않고 CHAR 타입을 사용하는 것을 권장한다.

참고 사항
  • n은 1부터 536,870,911 사이의 정수이다.
  • 하나의 데이터베이스에서 사용할 수 있는 국가 문자셋은 하나로 지정되어 있다. 예를 들어, 같은 데이터베이스에서 8비트 ISO 8889-1 Latin 코드 세트를 사용하면서 동시에 EUC 인코딩 코드 세트를 사용할 수는 없다.
  • 국가 문자열로 선언된 칼럼에 고정이든 가변이든 일반 문자열을 지정하면 오류가 발생한다.
  • 서로 다른 문자셋을 혼용하여 사용할 경우에도 오류가 발생한다.
예제

EUC-KR 환경에서 NCHAR(5)에 '큐브리드'를 저장하면 정상적으로 저장된다.

EUC-KR 환경에서 NCHAR(5)에 '큐브리드'를 저장한 후 CHAR_LENGTH() 함수를 사용하면 5가 출력된다.

UTF-8 환경에서 NCHAR(5)에 '큐브리드'를 저장하면 오류가 발생한다(UTF-8 문자셋을 지원하지 않음).