DUMP

構文

目的

DUMPは、exprのデータ型コード、長さ(バイト単位)および内部表現を含む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を引数として渡すことはできます。

関連項目:

次の例では、文字列式および列からダンプ情報を抽出する方法を示します。

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