Beyond standard relational database objects, HCL Informix® can be extended to handle specialized data types, access methods, routines, and other objects. Informix includes many built-in extensions that are fully integrated in the database server. Informix also provides DataBlade® modules, which are packages of extended database objects for a particular purpose and that are installed separately from the database server. Alternatively, you can create your own user-defined objects for Informix.
You can create user-defined data types, routines, access methods, and other database objects to suit your needs. You can use application programming interfaces to write user-defined routines and applications that access data in Informix® databases.
The Informix® DataBlade® API Programmer's Guide describes information about the DataBlade API, the C-language application programming interface (API) provided with HCL Informix.
These topics describe how to use built-in database extensions and separately installed DataBlade® modules.
A C user-defined routine (UDR) is a UDR that is written in the C language and uses the server-side implementation of the DataBlade® API to communicate with the database server. C UDRs (functions and procedures) are implemented as C-language functions. DataBlade modules often include C UDRs that are made available for use by registering them in the database.
This section outlines some implementation issues for C user-defined routines (UDRs). This section also describes the specific features and tasks of a C UDR.
A C user-defined routine (UDR) has access to shared memory for dynamic allocations and stack memory for routine arguments (including the MI_FPARAM structure), local stack variables, and return values.
This section describes how to create special UDRs, such as iterator functions, user-defined aggregates, and optimization functions.
This section describes the ways to extend data types with C user-defined routines (UDRs).
This section contains additional reference information.
The Informix® DataBlade® API Function Reference describes the DataBlade API functions and the subset of Informix ESQL/C functions that the DataBlade API supports.
The DataBlade® Developers Kit (DBDK) guides contain information about the tools you can use to develop and package DataBlade modules, which extend the functionality of HCL Informix® databases.
The J/Foundation Developer's Guide describes how to write user-defined routines (UDRs) in the Java™ programming language for Informix®.
The Informix® R-Tree Index User's Guide describes the HCL Informix R-tree secondary access method and how to access and use its components.
The Informix® User-Defined Routines and Data Types Developer's Guide describes how to define new data types and enable user-defined routines (UDRs) to extend HCL Informix.
The Informix® Virtual-Table Interface Programmer's Guide explains how to create a primary access method with the Virtual-Table Interface (VTI) so that users have a single SQL interface to HCL Informix tables and to data that does not conform to the storage scheme of HCL Informix.
The Informix® Virtual-Index Interface Programmer's Guide explains how to create a secondary access method with the Virtual-Index Interface (VII) to extend the built-in indexing schemes of HCL Informix typically with a DataBlade® module.