BINARY LARGE OBJECT / BLOB - Advanced SQL Engine - Teradata Database

SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-24
dita:mapPath
qwr1571437338192.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1147
lifecycle
previous
Product Category
Teradata Vantage™

C Data Type Definition

typedef int LOB_LOCATOR;
typedef int LOB_RESULT_LOCATOR;

Usage

BLOBs are passed as locators only, and not automatically loaded into memory. BLOB argument and return types must specify AS LOCATOR in the CREATE FUNCTION statement.

Here is an example using BLOB AS LOCATOR in a UDF definition and LOB_LOCATOR and LOB_RESULT_LOCATOR in the C function declaration.

SQL Function Definition Equivalent C Function Declaration
CREATE FUNCTION F1 (
  A BLOB AS LOCATOR)
RETURNS BLOB AS LOCATOR
 ...;
void f1( LOB_LOCATOR        *a,
         LOB_RESULT_LOCATOR *result,
   ... )
{  ... }