External-language routines

An external-language routine is a user-defined routine (UDR) that is written in an external language. The body of an external-language routine contains statements for operations such as flow control and looping, as well as special HCL OneDB™ library calls to access the database server. Therefore, you must use the appropriate compilation tool to parse and compile an external-language routine into an executable format.

The database server supports UDRs written in C and in Java™.
  • Routines in C

    To execute SQL statements in C UDRs, you must use the DataBlade® API. You cannot use ESQL/C in C UDRs.

    To write routines in C, you need a C compiler. For information about how to write UDRs in C, refer to the HCL OneDB DataBlade API Programmer's Guide and the HCL OneDB DataBlade API Function Reference.

  • Routines in Java

    To write Java routines, you need a Java development kit to compile your Java routines.

    For information about how to write Java UDRs, refer to the HCL® J/Foundation Developer's Guide.

Important: It is recommended that you use the DBDK to develop UDRs in external languages because the DBDK enforces standards that facilitate migration between different versions of the database server.