在 COBOL-DB2 程式中,您將如何檢測游標行結束的條件?


可使用游標從 DB2 表中獲取多行。但是,我們必須在迴圈中獲取此游標,以便一次將與單行對應 的值分配給主機變數。根據此邏輯,我們必須處理迴圈,直到游標達到最後一行結果。

當游標中沒有更多行可供獲取時,SQLCODE 欄位取值 100。實際上,我們可以透過以下方式實現此目 的。

SET WF-END-CURSOR-N TO TRUE
PERFORM UNTIL WF-END-CURSOR-Y
   EXEC SQL
      FETCH ORDER_CUR INTO :ORDER-ID
   END-EXEC
   IF SQLCODE = 100
      SET WF-END-CURSOR-Y TO TRUE
   ELSE
      PERFORM A20-PROCESS-RECORD
   END-IF
END-PERFORM

WF-END-CURSOR-Y 和 WF-END-CURSOR-N 是用於控制迴圈的兩個 88 級別標誌。一旦 SQLCODE 的值 為 100,即表示游標已達到最後一行,迴圈便終止。

更新於: 14-Sep-2020

1K+ 瀏覽量

開啟 職業 生涯

完成課程獲取認證

開始學習
廣告