例: アルゴリズム圧縮されたLOB関連データを圧縮解除する関数の作成 - Teradata Database - Teradata Vantage NewSQL Engine - 例: アルゴリズム圧縮されたLOB関連データを圧縮解除する関数の作成、CREATE FUNCTION (外部形式)およびREPLACE FUNCTION (外部形式)構文の文。

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

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/wkf1512081455740.ditamap
dita:ditavalPath
ja-JP/wkf1512081455740.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

次の各例で示す関数は、「例: LOB関連データをアルゴリズム圧縮する関数の作成」の例でアルゴリズム圧縮してあるLOBベースのデータを圧縮解除することを目的としています。

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

この例では、clob_decompressという名前のUDFを作成します。このUDFは、例: LOB関連データをアルゴリズム圧縮する関数の作成の関数clob_compressを使用してアルゴリズム圧縮したCLOB列を圧縮解除するものです。

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

この例では、d_clob_decompressという名前のUDFを作成します。このUDFは、例: LOB関連データをアルゴリズム圧縮する関数の作成の関数d_clob_compressを使用してアルゴリズム圧縮したLOBベースのDISTINCT型UDT列を圧縮解除するものです。

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

この例では、s_clob_decompressという名前のUDFを作成します。このUDFは、例: LOB関連データをアルゴリズム圧縮する関数の作成の関数s_clob_compressを使用してアルゴリズム圧縮したLOBベースのDISTINCT型UDT列を圧縮解除するものです。

     CREATE FUNCTION s_clob_decompress (a BLOB AS LOCATOR) 
     RETURNS SCLOB 
     SPECIFIC s_clob_decompress 
     LANGUAGE C 
     NO SQL  
     FOR DECOMPRESS 
     PARAMETER STYLE TD_GENERAL RETURNS NULL ON NULL INPUT 
     DETERMINISTIC 
     EXTERNAL NAME 'cs!sclobdecompress!sclobdecompress.c';