+ -
当前位置:首页 → 问答吧 → postgresql游标是否可以暂存,以便以后取用?

postgresql游标是否可以暂存,以便以后取用?

时间:2011-07-10

来源:互联网

当前我有一个项目,由于数据库中多个表之间关联比较复杂,直接使用SQL进行查询时,由于表之间的各种关系以及返回的记录集比较大,效率非常低,所以想通过存储过程每次只取部分结果集回来。具体的说,就是想针对查询中可能用到的表及条件在存储过程中使用多个游标,然后在嵌套循环中分别移动游标并寻找满足条件的的结果,在生成一部分结果后(比如10个或者100个)就将结果返回给逻辑层。如果此后,逻辑层需要取得上次返回结果集之后的那部分结果,此时应当如何实现?能否将第一次产生的游标存储在什么位置以便后续操作时取回来接着用?或者有其它方法?

非常感谢。

作者: ishallwin   发布时间: 2011-07-10

这不是分页问题吗 不用游标吧

作者: rucypli   发布时间: 2011-07-10

引用 1 楼 rucypli 的回复:

这不是分页问题吗 不用游标吧

你是说N个表连接在一起后分页?效率达不到要求啊。

作者: ishallwin   发布时间: 2011-07-10

保持cursor打开状态,是吗?
应该可以实现,但必须确保是同一会话里头。

作者: iihero   发布时间: 2011-07-10