动态计划出口

鉴于软件包所带来的优势,建议您使用软件包而不是动态计划出口。 使用动态计划出口是一种临时解决方案,旨在先解决 CICS® Db2® 环境中的问题,然后在 Db2中提供软件包。

您可以围绕众多小型计划设计 CICS 应用程序,并在执行时动态选择计划。 小计划与包不同,它与数据库请求模块 (DBRM) 具有严格的一对一对应关系。

通常,会驱动动态计划出口以确定在事务的第一个工作单元 (UOW) 开始时要使用的计划。 这称为 动态计划选择

还可以在后续 UOW 启动时驱动动态计划出口 (假定线程已在同步点释放) ,以确定要用于下一个 UOW 的计划。 计划出口可以决定使用其他计划。 这称为 动态计划切换

使用动态计划出口时, Db2 计划分配仅在执行程序中的第一个 SQL 语句时发生,或者在程序发出同步点并将控制链接或传输到另一个具有单独 DBRM 的程序之后发生。

这是通过使用在以下位置指定的出口程序完成的:
  • DB2ENTRY,针对在关键字 PLANEXITNAME 中指定的特定事务代码退出
  • DB2CONN,使用关键字 PLANEXITNAME 中指定的池的事务的出口。

IBM® 以源代码和对象代码形式提供了两个样本汇编语言出口程序 DSNCUEXT 和 DFHD2PXT。 您还可以编写其他出口程序。

请注意,不支持在动态出口程序中使用以下项:
  • SQL 命令。
  • IFI 调用。
  • EXEC CICS SYNCPOINT 命令。