db2 在Cobol中获取程序中超出最后一行的控制流

ufj5ltwl  于 2022-11-07  发布在  DB2
关注(0)|答案(1)|浏览(176)

使用此COBOL代码:

IDENTIFICATION DIVISION.                              
    PROGRAM-ID. DBNULLA.                                  
    DATA DIVISION.                                        
      WORKING-STORAGE SECTION.                            
        EXEC SQL                                          
          INCLUDE SQLCA                                   
        END-EXEC.                                         
        EXEC SQL                                          
          INCLUDE PATIENT                                 
        END-EXEC.                                         
    PROCEDURE DIVISION.                                   
    MAIN-PARA.                                            
         DISPLAY 'SAMPLE STRUCTURE OF COBOL DB2 PRORGRAM'.
         DISPLAY 'WE ARE CHECKING NULL HERE             '.
         MOVE 100 TO PAT-ID.                              
          EXEC SQL       
           SELECT PAT_ID,PAT_NAME,WARD_NAME INTO :PAT-ID,:PAT-NAME,
           :WARD-NAME FROM PATIENT WHERE PAT_ID = :PAT-ID          
          END-EXEC.                                                
         IF SQLCODE = 0                                            
          DISPLAY 'HI'                                             
         ELSE                                                      
          DISPLAY 'EMBEDDED SQL SQLCODE:' SQLCODE                  
         END-IF.                                                   
    STOP-RUN.

在执行时,我得到以下输出:

SAMPLE STRUCTURE OF COBOL DB2 PRORGRAM                                          
WE ARE CHECKING NULL HERE                                                       
HI                                                                              
IGZ0037S The flow of control in program DBNULLA proceeded beyond the last line of the program.
         From compile unit DBNULLA at entry point DBNULLA at compile unit offset  +000006E4 at entry offset +000006E4
         at address 1E5016E4.

我不明白为什么控制流超出了最后一行。我已经添加了STOP RUN。请帮助解决这个问题。

uurv41yg

uurv41yg1#

您对STOP-RUN的编码不正确。请改为对STOP RUN语句进行编码。

相关问题