DB2 Universal Database™ for iSeries CALL considerations

Stored procedures written in C that are invoked on some platforms cannot use argc and argv as parameters (that is, they cannot be of type main()). This differs from iSeries™ stored procedures which must use argc and argv.

For examples of stored procedures for DB2® UDB platforms, see the \SQLLIB\SAMPLES (or /sqllib/samples) subdirectory. Look for outsrv.sqc and outcli.sqc in the C subdirectory.

For UDB stored procedures called by an iSeries server, make sure that the procedure name is in uppercase. iSeries server currently folds procedure names to uppercase. This means that a procedure on the UDB server, having the same procedure name but in lowercase, will not be found. For stored procedures on an iSeries server, the procedure names are in uppercase.

Stored procedures on the iSeries server cannot have a COMMIT in them when they are created to run in the same activation group as the calling program (the proper way to create them). In UDB, a stored procedure is allowed to have a COMMIT, but the application designer should be aware that there is no knowledge on the part of DB2 UDB for iSeries that the commit occurred.