是的,我知道已经几个月了:P
DB-API的游标似乎紧跟sql游标之后建模。对于AFA资源(行)管理, DB-API没有指定客户端必须检索所有行还是DECLARE实际的sql游标 。只要fetchXXX接口执行了应有的功能,DB-API就会很高兴。
涉及到AFA psycopg2游标(您可能知道),“未命名的DB-API游标”将获取整个结果集-AFAIK由libpq缓冲在内存中。“命名的DB- API游标”(可能不是可移植的psycopg2概念)将按需请求行(fetchXXX方法)。
如“未知”所引用,executemany可用于优化同一命令的多次运行。但是,它不能满足准备好的语句的需要;当具有不同参数集的语句的重复执行不是直接顺序执行时,executemany()的性能将与execute()相同。DB- API确实为“驱动程序”作者提供了缓存执行的语句的能力,但是其实现(语句的作用域/生存期是多少?)是不确定的,因此无法在DB-API实现中设置期望值。