Returning SQLSTATE Values - Advanced SQL Engine - Teradata Database

SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
July 2021
Language
English (United States)
Last Update
2021-07-27
dita:mapPath
rin1593638965306.ditamap
dita:ditavalPath
rin1593638965306.ditaval
dita:id
B035-1147
lifecycle
previous
Product Category
Teradata Vantage™

A Java UDF can throw a java.lang.SQLException with an exception number and message that are returned and used to set the SQLSTATE value and error message.

Valid values for the SQLState field of the SQLException are in the range 38U00 to 38U99.

Here is an example:

public class UDFExample {

   public static Integer fact( Integer x )
   throws SQLException
   {
      int factresult = 0;
      if (x != null)
         factresult = 1;
      else
         throw new SQLException("Input value not valid", "38U01");
      ...
      return new Integer(factresult);
   }

   ...

}

SQLException is the only valid exception that Java external routines can throw.