例: LOB関連データをアルゴリズム圧縮する関数の作成 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/spp1591731285373.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

この例に示す各CREATE FUNCTIONリクエストは、各種のLOB関連データをアルゴリズム圧縮するために記述されています。

外部関数のC、C++、またはJavaコードを記述する方法については、<Teradata Vantage™ - SQL外部ルーチン プログラミング、B035-1147>を参照してください。これらの関数定義は、LOB関連のデータを圧縮するために参照します。

この例に示す関数でアルゴリズム圧縮したデータを圧縮解除するために記述された関数については、例: アルゴリズム圧縮されたLOB関連データを圧縮解除する関数の作成を参照してください。

この例では、clob_compressという名前のUDFを作成して、CLOB列をアルゴリズム圧縮します。

     CREATE FUNCTION clob_compress (a CLOB AS LOCATOR) 
     RETURNS BLOB AS LOCATOR 
     SPECIFIC clob_compress 
     LANGUAGE C 
     NO SQL  
     FOR COMPRESS 
     PARAMETER STYLE TD_GENERAL 
     RETURNS NULL ON NULL INPUT 
     DETERMINISTIC 
     EXTERNAL NAME 'cs!clobcompress!clobcompress.c';

この例では、d_clob_compressという名前のUDFを作成して、DISTINCT型LOBベースのUDT列をアルゴリズム圧縮します。

     CREATE FUNCTION d_clob_compress (a DCLOB) 
     RETURNS BLOB AS LOCATOR 
     SPECIFIC d_clob_compress 
     LANGUAGE C 
     NO SQL  
     FOR COMPRESS 
     PARAMETER STYLE TD_GENERAL RETURNS NULL ON NULL INPUT 
     DETERMINISTIC 
     EXTERNAL NAME 'cs!dclobcompress!dclobcompress.c';