본문 바로가기

[오라클 레퍼런스 함수] DUMP - 데이터 타입, 바이트 길이, 내부 표현 추출

by ㅇㅍㅍ 2023. 8. 4.
[오라클 레퍼런스 함수] DUMP - 데이터 타입, 바이트 길이, 내부 표현 추출
728x90

DUMP

 

구문

DUMP(expr[, return_fmt [, start_position [, length ] ]])

 

목적

DUMP 함수는 expr의 데이터 타입 코드(data type code), 바이트 단위 길이(length in bytes), 그리고 내부 표현(internal representation)을 포함하는 VARCHAR2 값을 반환합니다. 반환된 결과는 항상 데이터베이스 문자 집합으로 표시됩니다. 각 코드에 대응하는 데이터 타입은 표 2-1을 참조하세요.

 

return_fmt 인자는 반환 값의 형식을 지정하며, 다음과 같은 값을 가질 수 있습니다:

 

  • 8은 결과를 8진법 표기법으로 반환합니다.
  • 10은 결과를 10진법 표기법으로 반환합니다.
  • 16은 결과를 16진법 표기법으로 반환합니다.
  • 17은 바이트를 문자로 인쇄합니다. 이 때 문자 세트에 따라 인터프리터에서 인쇄 가능한 문자(일반적으로 ASCII 또는 EBCDIC)로 해석될 수 있는 경우에만 인쇄됩니다. 일부 ASCII 제어 문자는 ^X와 같은 형태로 인쇄될 수도 있습니다. 그렇지 않은 경우 문자는 16진법 표기법으로 인쇄됩니다. 모든 NLS 매개변수는 무시됩니다. return_fmt 17을 사용하여 DUMP의 특정 출력 형식에 의존하지 마십시오.

 

기본적으로 반환 값은 문자 집합 정보를 포함하지 않습니다. expr의 문자 집합 이름을 검색하려면 앞의 포맷 값 중 하나에 1000을 더하십시오. 예를 들어, return_fmt가 1008이면 결과를 8진법으로 반환하고 expr의 문자 집합 이름을 제공합니다.

start_positionlength 인수는 내부 표현의 어느 부분을 반환할지 결정하는 데 사용됩니다. 기본값은 전체 내부 표현을 10진법 표기법으로 반환하는 것입니다.

expr이 null이면 이 함수는 NULL을 반환합니다.

이 함수는 CLOB 데이터를 직접 지원하지 않습니다. 하지만 CLOB는 암시적 데이터 변환을 통해 인수로 전달할 수 있습니다.

 

참고:

 

예제

다음은 문자열 표현식과 열에서 덤프(dump) 정보를 추출하는 방법을 보여주는 예시입니다.

SELECT DUMP('abc', 1016)
  FROM DUAL;

DUMP('ABC',1016)                          
------------------------------------------ 
Typ=96 Len=3 CharacterSet=WE8DEC: 61,62,63 

SELECT DUMP(last_name, 8, 3, 2) "OCTAL"
  FROM employees
  WHERE last_name = 'Hunold'
  ORDER BY employee_id;

OCTAL
-------------------------------------------------------------------
Typ=1 Len=6: 156,157

SELECT DUMP(last_name, 10, 3, 2) "ASCII"
  FROM employees
  WHERE last_name = 'Hunold'
  ORDER BY employee_id;

ASCII
--------------------------------------------------------------------
Typ=1 Len=6: 110,111

 


출처: 오라클 레퍼런스

원문 링크: Oracle DUMP 함수 문서

 

반응형

댓글