CICS - 刪除



DELETE 命令用於刪除檔案中現有的記錄。在此命令之前,必須使用 READ UPDATE 命令讀取記錄。引數與之前描述的一樣。Delete 命令的語法如下 −

語法

EXEC CICS DELETE
   FILE('name')
END-EXEC.

以下是在沒有使用 Update 選項讀取記錄的情況下直接刪除記錄的語法 −

語法

EXEC CICS DELETE
   FILE('name')
   RIDFLD(data-value)
END-EXEC.

示例

以下是組刪除的示例。這可以透過使用通用選項來完成,其中所有滿足通用條件的記錄將被刪除。NUMREC 將持有被刪除的記錄數。此處提到的欄位應為 S9(4) 比較欄位。

IDENTIFICATION DIVISION.                                         
PROGRAM-ID. HELLO.                                               
DATA DIVISION. 
WORKING-STORAGE SECTION.
01 WS-STD-REC-LEN    PIC S9(4) COMP.
01 WS-STD-KEY-LEN    PIC S9(4) COMP.
01 WS-STD-REC-KEY    PIC 9(3).
01 WS-STD-REC        PIC X(70).
01 WS-NUM-REC-DEL    PIC S9(4).
PROCEDURE DIVISION.
MOVE '11'       TO WS-STD-REC-KEY.
MOVE 2          TO WS-STD-KEY-LEN.
EXEC CICS READ
   FILE ('FL001')
   RIDFLD (WS-STD-REC-KEY)
   KEYLENGTH (WS-STD-KEY-LEN)
   GENERIC
   NUMREC (WS-NUM-REC-DEL)
END-EXEC.

Delete 命令異常

下表顯示了 DELETE 語句期間出現的異常列表 −

序號 異常和說明
1

NOTOPEN

檔案未開啟。

2

NOTFND

正在搜尋的記錄不存在於資料集中(DELETE 帶有 RIDFLD)。

3

NOTAUTH

如果使用者沒有足夠的許可權使用該檔案。

4

INVREQ

沒有使用 UPDATE 之前進行重寫。

5

FILENOTFOUND

FCT 中未建立檔案項。

cics_file_handling.htm
廣告
© . All rights reserved.