informix
Extending Informix Dynamic Server 2000
Developing a User-Defined Routine

Reviewing Information about User-Defined Routines

The following table shows where the database server stores information from CREATE FUNCTION and CREATE PROCEDURE statements in the sysprocedures system catalog table.

UDR Information CREATE Statement Syntax Column of sysprocedures
Routine type: function or procedure FUNCTION or PROCEDURE keyword isproc
Routine name After FUNCTION or PROCEDURE keyword procname
Owner name With the following syntax after FUNCTION or PROCEDURE keyword: owner.routine_name owner
Specific name SPECIFIC keyword specificname
Routine parameters Parameter list numargs, paramstyle, paramtypes
Routine modifiers WITH clause variant, handlesnulls, percallcost, negator, selfunc, iterator, internal, class, stack, costfunc, selconst, parallelizable
Location of the routine (if it is external) EXTERNAL NAME externalname
Routine language LANGUAGE langid

The sysprocedures system catalog table assigns a routine identifier to each row, which uniquely identifies the associated UDR. The procid column of sysprocedures stores this routine identifier.

The information about the routine type, routine name, routine owner, and routine parameters make up the routine signature. You can use the SPECIFIC keyword of CREATE FUNCTION and CREATE PROCEDURE to assign a specific name to a particular routine signature. For more information, see Assigning a Specific Routine Name.

For SPL routines, the database server also stores routine information in the sysprocbody and sysprocplan system catalog tables. The sysprocbody table stores both the text and the compiled version (which is not legible) of the SPL routine. The sysprocplan table stores a compiled version of the execution plan, which is not legible.


Extending Informix Dynamic Server 2000, Version 9.2
Copyright © 1999, Informix Software, Inc. All rights reserved