본문 바로가기
2.2 DB/ORACLE

[Oracle] 데이터베이스의 문자 집합 확인하기

by Dohi._. 2024. 10. 18.
728x90

Oracle 데이터베이스에서 문자 집합(Character Set)과 언어 설정은 데이터 저장 및 처리에 중요한 역할을 합니다.

올바른 설정을 통해 다양한 언어의 데이터를 정확하게 처리할 수 있습니다.

 

1. NLS_DATABASE_PARAMETERS란?

NLS_DATABASE_PARAMETERS는 Oracle 데이터베이스의 국가 언어 지원(NLS) 설정을 포함하고 있는 데이터 딕셔너리 뷰입니다. 이 뷰는 문자 집합, 날짜 형식, 숫자 형식 등 다양한 지역화 설정을 보여줍니다.

  • PARAMETER: NLS 설정의 이름을 나타냅니다.
    • e.g.  NLS_CHARACTERSET, NLS_LANGUAGE, NLS_TERRITORY 등이 있습니다.
  • VALUE: 해당 파라미터의 현재 값을 보여줍니다.
    • e.g.  예를 들어, 기본 문자 집합이 AL32UTF8일 경우, NLS_CHARACTERSET에서  확인가능합니다.

우리는 여기서 문자 집합을 알아보려고 합니다.

2. 문자 집합 확인 쿼리

데이터베이스의 문자 집합과 언어 정보를 확인하기 위해 아래의 SQL 쿼리를 사용할 수 있습니다

SELECT *
FROM NLS_DATABASE_PARAMETERS
WHERE PARAMETER IN ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET', 'NLS_LANGUAGE');

 

 

  • NLS_CHARACTERSET: 데이터베이스에서 기본적으로 사용되는 문자 집합입니다. 이 설정은 텍스트 데이터를 저장하는 데 사용됩니다.
  • NLS_NCHAR_CHARACTERSET: NCHAR 데이터 타입에 대한 문자 집합으로, 고정 길이의 유니코드 데이터를 처리합니다.
  • NLS_LANGUAGE: 데이터베이스에서 사용하는 기본 언어 설정입니다. 이는 메시지와 형식에 영향을 미칩니다.

쿼리 실행 (예시)

쿼리를 실행하면 아래와 같은 결과를 얻을 수 있습니다 (다양한 DB환경을 보여드리기 위해서 )

  • NLS_LANGUAGE: AMERICAN은 데이터베이스의 기본 언어가 미국 영어임을 나타냅니다.

 

문자 집합을 알고 있어야 NVARCHAR를 말고 VARCHAR2를 쓸때 바이트관련되어 관리를 하거나 올바른 문자 집합과 언어 설정은 데이터베이스에서 다양한 언어의 데이터를 정확하게 처리하고 표시하는 데 필수적입니다.

728x90

댓글