python – 带有postgres的游标,存储数据的位置以及对DB的调用次数
发布时间:2020-09-06 05:14:33 所属栏目:Python 来源:互联网
导读:嗨,我使用psycopg2进行postgres访问.我试图了解“游标”存储返回行的位置.它是作为临时表存储在数据库中还是存储在客户端?游标(当你指定获取多行时)一次向数据库命中一次查询或者它是否一次命中数据库,得到第一组结果然后当你迭代返回的值时,它得到下一组(缓
嗨,我使用psycopg2进行postgres访问. 我试图了解“游标”存储返回行的位置.它是作为临时表存储在数据库中还是存储在客户端? 游标(当你指定获取多行时)一次向数据库命中一次查询或者它是否一次命中数据库,得到第一组结果然后当你迭代返回的值时,它得到下一组(缓冲) . 我已经阅读了关于光标的多篇文章但没有真正给出内部工作…… 谢谢. 最佳答案 游标的数据集由服务器在执行第一个FETCH时准备.客户端应用程序仅接收后续FETCH语句的结果.如果服务器无法使用索引来维护游标,则会创建临时数据集.你可以执行这个简单的测试:
逐个执行此脚本中的语句:
第一个FETCH(*)大致与创建类似临时表的时间大致相同:
一些驱动程序可能在客户端有自己的游标实现.这应该在驱动程序的文档中明确描述. (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |