Example: Procedure with Parameter Style SQL - Analytics Database - Teradata Vantage

SQL External Routine Programming

Deployment
VantageCloud
VantageCore
Edition
Enterprise
IntelliFlex
VMware
Product
Analytics Database
Teradata Vantage
Release Number
17.20
Published
June 2022
ft:locale
en-US
ft:lastEdition
2023-07-11
dita:mapPath
iiv1628111441820.ditamap
dita:ditavalPath
qkf1628213546010.ditaval
dita:id
B035-1147
lifecycle
latest
Product Category
Teradata Vantage™

Here is an example of how to declare a C function for an external stored procedure that uses parameter style SQL:

/*****  C source file name: getregion.c  *****/
   
#define  SQL_TEXT Latin_Text
#include <sqltypes_td.h>
#include <string.h>
   
void xsp_getregion( VARCHAR_LATIN *region,
                    int           *region_isnull,
                    char           sqlstate[6],
                    SQL_TEXT       extname[129],
                    SQL_TEXT       specific_name[129],
                    SQL_TEXT       error_message[257] )
{
     ...
}

For a complete example of the C function, see Example: Basic External Stored Procedure.

The corresponding CREATE PROCEDURE statement looks like this:

CREATE PROCEDURE GetRegionXSP
  (INOUT region VARCHAR(64))
LANGUAGE C
NO SQL
EXTERNAL NAME 'CS!getregion!xspsrc/getregion.c!F!xsp_getregion'
PARAMETER STYLE SQL;