17.10 - Example: Procedure with Parameter Style SQL - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
July 2021
Content Type
Programming Reference
Publication ID
B035-1147-171K
Language
English (United States)

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;