CREATE TABLE SYS.SYSPROCPARM ( proc_id UNSIGNED INT NOT NULL, parm_id SMALLINT NOT NULL, parm_type SMALLINT NOT NULL, parm_mode_in CHAR(1) NOT NULL, parm_mode_out CHAR(1) NOT NULL, domain_id SMALLINT NOT NULL, width SMALLINT NOT NULL, scale SMALLINT NOT NULL, parm_name CHAR(128) NOT NULL, remarks LONG VARCHAR, "default" LONG VARCHAR, user_type INTEGER, PRIMARY KEY ( proc_id, parm_id ), FOREIGN KEY REFERENCES SYS.SYSPROCEDURE, FOREIGN KEY REFERENCES SYS.SYSDOMAIN )
Each parameter to a procedure in the database is described by one row in SYSPROCEDURE.
proc_id The procedure number uniquely identifies the procedure to which this parameter belongs.
parm_id Each procedure starts numbering parameters at 1. The order of parameter numbers corresponds to the order in which they were defined.
parm_type The type of parameter will be one of the following:
Normal parameter (variable)
Result variable - used with procedure that return result sets
SQLSTATE error value
SQLCODE error value
parm_mode_in (Y/N) Indicates whether this parameter supplies a value to the procedure (IN or INOUT parameters).
parm_mode_out (Y/N) Indicates whether this parameter returns a value from the procedure (OUT or INOUT parameters).
domain_id Identify the data type for the parameter by the data type number listed in the SYSDOMAIN table.
width This column contains the length of string parameters, the precision of numeric parameters, and the number of bytes of storage for all other data types.
scale The number of digits after the decimal point for numeric data type parameters, and zero for all other data types.
parm_name The name of the parameter.
default The default value for the parameter, held as a string.