17.00 - 17.05 - ラージ オブジェクト型結果へのデータの追加 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Published
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1147-170K-JPN
Language
日本語 (日本)

LOB_RESULT_LOCATOR型を結果として宣言したUDFで、結果に一連のバイトを追加するには、FNC_LobAppendライブラリ関数を使用する必要があります。

以下に示すのは、前のサンプル コードを変更して、LOB_RESULT_LOCATOR型の結果にデータを追加するようにしたものです。

#define BUFFER_SIZE 500
   
void do_something ( LOB_LOCATOR *a,
                    LOB_RESULT_LOCATOR *result,
                    char sqlstate[6] )
{
   BYTE            buffer[BUFFER_SIZE];
   FNC_LobLength_t actlen;
   LOB_CONTEXT_ID  id;
   
   FNC_LobOpen(*a, &id, 0, BUFFER_SIZE);
   FNC_LobRead(id, buffer, BUFFER_SIZE, &actlen);
   FNC_LobAppend(*result, buffer, actlen, &actlen);
   FNC_LobClose(id);
   
    ...
   
}