问题:更改并编译了DB2程序PROGA,但是3天后绑定了它。如果我们在第4天执行此程序会怎样?
预编译器将当前时间戳插入修改后的源代码和DBRM中。在修改源代码的情况下,该时间戳记将传递到装入模块,在使用DBRM的情况下,该时间戳记将传递给软件包。在程序执行时,将比较加载模块和程序包的时间戳。进行此比较以确保执行了正确版本的软件包和装入模块。
根据给定的方案,编译已经完成,并且绑定在3天后完成。在预编译步骤中插入时间戳,并且在编译步骤之前进行预编译。因此,在DBRM和装入模块中插入了相同的时间戳,这不会引起任何时间戳不匹配问题。程序将正确执行。
BIND对时间戳没有影响,因此即使BIND在另一天完成,DBRM和修改后的源代码也具有预编译时间戳,并且相同的时间戳将分别传递给软件包和装入模块。在程序执行过程中不会造成任何问题。