The Java enhancements in this feature will allow user-defined data types (UDTs) and complex data types (CDTs) to be declared as parameters and return types for external stored procedures and user-defined functions (UDFs) written in the Java language. The UDTs and CDTs supported by this feature include the following data types:
- Distinct and structured UDTs
- Period data types
- Geospatial data types (ST_Geometry, MBR, and MBB)
- XML
- JSON
- ARRAY/VARRAY
This feature also provides the following additional enhancements:
- New parameter mapping options for the TIME WITH TIME ZONE and TIMESTAMP WITH TIME ZONE data types that allow the time zone value in these types to be transmitted to a Java external routine.
- New non-LOB-based parameter mappings for the JSON data type, as well as a new parameter mapping option to support sending JSON data in binary format.
Benefits
- Allow Java UDFs and external stored procedures to be similar to the C/C++ external routines that allow all data types as parameters and return types.
- New Teradata Java classes provide support for accessing and manipulating UDT and CDT parameters from within a Java UDF or external stored procedure.
- Time zone values and binary JSON data can now be passed to Java external routines.
- Non-LOB-based parameter mappings for the JSON, XML, and ST_Geometry data types can be used when it is known that the parameter size will not exceed 64K. This may provide better performance.
Considerations
This feature does not support Java UDTs or user-defined methods (UDMs) written in Java.
SQL Changes
- CREATE FUNCTION and REPLACE FUNCTION
- CREATE PROCEDURE and REPLACE PROCEDURE
Additional Information
For more information on Java Enhancements to Support UDTs and CDTs, see:
- Teradata Vantage™ SQL External Routine Programming , B035-1147
- Teradata Vantage™ Data Types and Literals, B035-1143
- Teradata Vantage™ Geospatial Data Types , B035-1181
- Teradata Vantage™ JSON Data Type, B035-1150
- Teradata Vantage™ XML Data Type, B035-1140