¿Podría explicar la diferencia entre un paquete y un plan, el proceso de precompilación, compilación y ejecución de un programa COBOL DB2 así como un programa COBOL CICS DB2?
Bueno, responderé a los aspectos más destacados en respuesta a su pregunta, pero si realmente desea una respuesta detallada, debería leer los manuales de DB2 (o un libro como la Guía del desarrollador de DB2.
¿Qué es un plan?
Un plan es un módulo ejecutable que contiene la lógica de la ruta de acceso producida por el optimizador de DB2. Puede estar compuesto por uno o más DBRM y paquetes. Antes de que se pueda ejecutar un programa DB2 para z / OS (con SQL estático), debe tener un plan asociado. Los planes se crean mediante el comando BIND. El plan se almacena en el directorio DB2 y se accede a él cuando se ejecuta su programa. La información sobre el plan se almacena en el catálogo de DB2.
¿Qué es un paquete?
Un paquete es un único DBRM vinculado con rutas de acceso optimizadas. Mediante el uso de paquetes, la lógica de acceso a la tabla se «empaqueta» en un nivel más bajo de granularidad que un plan, a nivel de paquete (o programa). Para ejecutar un paquete, primero debe incluirlo en la lista de paquetes de un plan. Los paquetes no se ejecutan directamente, solo se ejecutan indirectamente cuando se ejecuta el plan en el que están contenidos; como se discutió anteriormente, las UDF y los desencadenadores son excepciones a esta regla. Un plan puede constar de uno o más DBRM, uno o más paquetes o una combinación de paquetes y DBRM.
¿Qué es la preparación del programa?
Un programa de aplicación de DB2 debe pasar por un proceso conocido como preparación del programa antes de que pueda ejecutarse satisfactoriamente. La preparación del programa requiere una serie de preprocesadores de código que, cuando se ejecutan en la secuencia adecuada, crean un módulo de carga ejecutable y un plan de aplicación DB2. La combinación del módulo de carga ejecutable y el plan de aplicación es necesaria antes de que se pueda ejecutar cualquier programa DB2, ya sea por lotes o en línea. Los programas CICS requieren un paso de preprocesamiento adicional. El primer paso es la precompilación. Los programas DB2 deben analizarse y modificarse antes de la compilación normal. El precompilador de DB2 realiza esta tarea. En un nivel alto, el precompilador básicamente busca SQL, lo elimina del programa y lo coloca en un DBRM. La salida de la precompilación es un DBRM con SQL y un programa fuente modificado. El DBRM se enlaza mediante el comando BIND, que es un tipo de compilador para sentencias SQL. En general, BIND lee sentencias SQL de DBRM y produce un mecanismo para acceder a los datos según lo indiquen las sentencias SQL vinculadas. La fuente modificada se compila utilizando el compilador de lenguaje de su elección. A continuación, la fuente compilada se edita mediante un enlace a un módulo de carga ejecutable. El módulo de interfaz de lenguaje de host DB2 adecuado también debe incluirse en el paso de edición del enlace. Este módulo de interfaz se basa en el entorno (TSO, CICS o IMS / TM) en el que se ejecutará el programa. Al final de esta serie de pasos, si todo va bien, tendrá un programa DB2 ejecutable.
Nota del editor: ¿Está de acuerdo con la respuesta de este experto? Si tiene más para compartir, publíquelo en uno de nuestros
[email protected]/ search390> foros de discusión.