COBOL中如何操作CURSOR

请给我指点一下
2025-01-01 18:43:39
推荐回答(3个)
回答1:

这是非主键检索的一种执行方式(多条检索)。
其实cobol中的游标就好比是定义好的指针一样(个人理解),每次做fetch操作的时候游标都会把满足sql文条件的数据存放到与DB结构相同的一个结构中(例如DB COPY文),然后做你想要做的操作。
如果是主键检索的话,就没有必要定义游标了,因为只检出一条数据。

回答2:

EXEC SQL DECLARE CE CURSOR FOR
SELECT . . . FROM TEMPL . . .
END-EXEC.
先定义,定义好取什么值

EXEC SQL OPEN CE
END-EXEC.
打开

EXEC SQL FETCH CE INTO . . .
END-EXEC.
再fetch

EXEC SQL CLOSE CE
END-EXEC.
最后关闭

回答3:

楼上的关于游标在cobol中的使用是正确的!
在cobol程序中嵌入了sql语言的话,一般都保存为.pco文件。
这样的cobol程序,需要调用数据库的命令将其转换为.cbl文件,将.cbl文件编译。
在转换.pco文件的时候,也可以改变一些默认的设置,比如,默认的读取结束SQLCODE是1403,转换的时候也可以设置为0100。。。当然,这要看你程序中是如何判断的了