Using DB2 stored procedures

All DB2 Stored Procedures must be linked AMODE(31), RMODE(ANY). With the use of DB2, strobe is forced off by the operating environment. As a result strobe is not supported for use with DB2 Stored Procedures, so it should be set to 0.

Stored Procedures must be linked with the Version 6 TBLBASE stub.

In JCL for WLM-Managed DB2 SPAS, include:

  • your.prefix.LOAD in the STEPLIB (not needed if tableBASE load modules are available in LPA or system link-libraries)
  • DD for TBOPT file (if desired),
  • //TBDUMP DD SYSOUT=* statement to capture diagnostic information in case of an abend.
  1. Stored Procedures must not create or access tables using a local TSR. If the first Stored Procedure that uses tableBASE in the WLM-Managed DB2 SPAS abends, the local TSR in that DB2 SPAS vanishes. This can have unpredictable effects on any other concurrently running Stored Procedures in the same DB2 SPAS that are also using tableBASE, if tables from the local TSR are being used. This also means that you must not use linked VTS tables in a Stored Procedure (these are tables with a VTS:xxxx entry in the ML-List or tables accessed using the VTSFIRST and VTSLAST TBOPT options). When accessing linked VTS tables, tableBASE creates an entry in the local TSR which re-directs accesses of the table to the VTS-TSR.
  2. Stored Procedures cannot access tableBASE libraries. The normal configuration for a Stored Procedure is to use a shared VTS-TSR that would be pre-loaded via a batch TBDRIVER job. The tableBASE run-time option ALLOW_TB_LIB_IO will allow you to set up access to a tableBASE library, but it is not recommended as this could cause tableBASE to abend if more than one Stored Procedure in a DB2 SPAS were to access a tableBASE library at the same time.