FNC_LobAppendの使用例 - Teradata Database - Teradata Vantage NewSQL Engine

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/uhh1512082756414.ditamap
dita:ditavalPath
ja-JP/uhh1512082756414.ditaval
dita:id
B035-1147
Product Category
Software
Teradata Vantage
#define SQL_TEXT Latin_Text
#include <sqltypes_td.h>
#define BUFFER_SIZE 100000

void concat2( LOB_LOCATOR *a,
              LOB_LOCATOR *b,
              LOB_RESULT_LOCATOR *result,
              char sqlstate[6] )
{
   FNC_LobLength_t actlen;
   BYTE            buffer[BUFFER_SIZE];
   LOB_CONTEXT_ID  id;
   int             trunc_err = 0;

   /* Append the first argument. */

   FNC_LobOpen(*a, &id, 0, 0);

   while( FNC_LobRead(id, buffer, BUFFER_SIZE, &actlen) == 0
          && !trunc_err )
 trunc_err = FNC_LobAppend(*result, buffer, actlen, &actlen); 

   FNC_LobClose(id);

   ...

}