READNEXT与READ GTEQ的差别

READNEXT与READ GTEQ的区别
READNEXT和READ GTEQ可实现同样的功能,实现向下查找。但是有些区别:

1、READNEXT必须配合startbr、endbr使用;而startbr时会锁住记录,必须等待endbr释放(注:这种锁与LOCK不同,所以用unlock释放无效,必须用ENDBR释放。另,read-upd后,可以STARTBR正常)

如一旦startbr成功,在endbr前,不能read-upd档案,否则报错ABEND AFCY、RESP=0,RESP2=0,需要先ENDBR、再UNLOCK(否则报错INVREQ)、再READ-UPD。

2、READ GTEQ直接使用,不会锁记录(read-upd后,可以正常READ GTEQ;READ GTEQ后,可以正常read-upd)

3、READNEXT可以实现向下查找,而其对应的READPREV可以实现向上查找。READ GTEQ没有对应命令

4、READ GTEQ是读索引文件(例如辅助KEY的文件)的默认方式?

5、READ GTEQ效率较READ NEXT慢?



COBOL中这几个CICS命令常用句式:

1、READNEXT、READPREV命令

EXEC CICS
   READNEXT FILE(文件名)
            SET(读到的记录地址)
            LENGTH(记录长度)
            RIDFLD(记录ID)
END-EXEC

EXEC CICS
   READPREV FILE(文件名)
            SET(读到的记录地址)
            LENGTH(记录长度)
            RIDFLD(记录ID)
END-EXEC

2、READ GTEQ命令

EXEC CICS
   READ FILE(文件名)
        SET(读到的记录地址)
        LENGTH(记录长度)
        RIDFLD(记录ID)
        GTEQ
END-EXEC



介绍CICS READ的网址链接:http://blog.csdn.net/lzl0516/article/details/4437446

http://publib.boulder.ibm.com/infocenter/cicsts/v2r3/index.jsp?topic=/com.ibm.cics.ts23.doc/dfhp3/dfhp3mn.htm