쥬로그

오라클 - 메타데이터, 캐릭터셋 본문

Study/Oracle

오라클 - 메타데이터, 캐릭터셋

쥬쥬씨 2021. 8. 31. 21:28
반응형

< 메타데이터, 캐릭터셋 >

* 데이터사전은 메타데이터를 저장하는 읽기 전용 DB이다.

* DML은 따로 COMMIT해줘야 하지만 DDL은 자동으로 COMMIT되어 DB에 반영된다.


* 메타데이터

- 데이터를 위한 데이터

- DB, 테이블의 스키마에 대한 정보를 저장하는 테이블

- DB명 테이블명, 컬럼명, 사용자명, ...

 

♣ 데이터 사전 (Data Dictionary)

- 데이터베이스의 정보 저장

- 시스템 카탈로그(System Catalog)라고도 함

- 일반적으로 읽기전용정보(Read-only)

 

♣ 데이터 디렉토리 (Data Directory)

- DBMS의 모든 데이터가 저장되는 디텍토리(폴더)

- DB 저장, 상태 및 로그 저장

 

> TAB

  : 테이블의 약자

  : 접속한 사용자가 소유한 테이블의 정보를 저장하는 데이터 딕셔너리

 

> USER

  SELECT TABLE_NAME FROM USER_TABLES ORDER BY TABLE_NAME DESC;

 

> ALL

  SELECT OWNER, TABLE NAME FROM ALL_TABLES;

 

> DBA

  SELECT OWNER, TABLE_NAME FROM DBA_TABLES;

 

> CBA_

  : 컨테이너 관련 데이터 딕셔너리

 

 

* 캐릭터셋

- 문자인코딩 정보/ 메타데이터의 일종

- 문자열(VARCHAR, CHAR)의 값을 저장할 때 사용되는 기본 정도

- DB/테이블 별로 별도 설정 가능

 -> ASCII/ISO-8859-1 : 아스키 계열

 -> EUC-KR/KSC_5601 : 한글 완성형 계열

 -> UTF-8/UNICODE : 유니코드계열

 -> UTF8 : 기본

 

ex) 오라클 캐릭터셋을 조회하시오.

-> select * from nls_database_parameters where parameter = 'NLS_CHARACTERESET';

 

- 컴퓨터는 0과 1을 처리하는 기계

- 0과 1의 의미는 명령어, 레지스터, 메모리 주소, 글자, 숫자 등 명령어의 형식에 따라 구분한다.

- 노이만 아키텍처

  : 모두 한 메모리에 저장

  : 프로그래밍 시작 위치에는 반드시 명령어가 있어야 함

 

- 하바드 아키텍처

  : 명령어/데이터(나머지 모두)를 저장하는 메모리 구분

 

- ASCII

  : 미국 표준

  : 한 자에 한 바이트 할당

  : 다른 나라에서는 약간의 변형

  : 이를 국제 표준화한 것이 ISO8859

 

- 한글코드

  : 완성형/조합형

  : 한글은 가능한 글자를 모두 조합하면 11,172자

  : 글자가 너무 많아 2350 -> 11172자의 순으로 표준화함

  : KSC5601/EUC-KR

  : MS의 확장완성형

    -> MS949/CP949

 

- 유니코드(Unicode)

  : 전 세계의 모든 글자를 가지는 문자 코드

  : 아스키코드 기반 -> 유니코드 기반

  : 기본 평면, 확장 평면 형태 (주로 2바이트)

  : 한글의 경우는 2바이트

 

- UTF-8

  : 유니코드의 가변 길이 인코딩(1-6바이트)

  : 아스키코드와의 호환성(1 바이트의 경우)

  : 한글의 경우는 3 바이트

  : 추천


< Point >

☆ DBMS의 데이터가 실제로 저장되는 폴더(디렉토리)를 데이터 디렉토리(Data Directory)라고 한다.

☆ 현재 가장 일반적으로 많이 쓰이는 캐릭터셋은 UTF-8이다.

    완성형(KSC-5601)이나 아스키코드(ASCII/ISO-8859-1)은 가급적 사용하지 않는 것이 좋다.

☆ 프리픽스(prefix) 중 가장 최근에 추가된 것은 CBA_이다.

    CBA_는 컨테이너 DC 관련 프리픽스이다.


< 요약 > 

* 메타데이터 (MetaData)

- 데이터사전(Data Dictionary)

- 각종 테이블/DB 정보 저장

- 데이터디렉토리(Data Directory): DBMS의 정보가 저장되는 위치

* 캐릭터셋 (CharacterSet)

- 인코딩 문자셋 지정

- UTF-8 추천

반응형