您的位置:首页 > 数据库

数据库-游标

2015-12-20 00:00 417 查看
如果查询超过一个元组,那就不可能一次性给宿主主变量赋值,就需要为查询定义一个游标,它的取值范围就是查询结果关系中的所有元组,取出游标指示的每一个元组存放在共享变量中,并由宿主主语言系统进行处理。

游标定义:

说明一个游标的格式为:EXEC SQL DECALRE <游标名> CUESOR FOR(SELECT 查询块)

执行SELECT查询块的结果是一个关系,游标的取值范围就是这个关系上的元组的位置,当移动或者推进游标的时候,游标指向特定的元组。

打开游标

打开游标的句格式为:EXEC SQL OPEN<游标名>

在打开游标的时候,执行与游标相联系的SQL查询语句,将查询结果值置于游标中,游标指向查询结果中的第一个元组

取数语句

EXEC SQL FETCH <游标名> INTO <共享变量列表>

本语句有两大作用,首先从结果关系中取出游标当前所指元组的值并存入共享变量,然后把游标推进到下一个元组位置。如果没有元组可读,则置变量SQLSTART为“02000”,标识SQL没有找到所需要的某个元组。

关闭游标

由于取完或取数发生错误等原因因而不再使用游标时,应关闭游标。关闭游标的语句格式为:EXEC SQL CLOSE<游标名>

一个游标被关闭之后,就不再指向关系中的元组了,单可以重新对它进行初始化
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: