如何遍历python中来自sql存储过程的表。使用While循环和Pyodbc?

杰西卡·沃伦(Jessica Warren)
cur = connection.cursor()
cur.execute("set nocount on exec SP") 
while(cur.nextset()):
    print(cur.description)

这段代码产生10个表,有时是11个。我希望能够使用while循环,因为表的数量可能每次都不同。上面这段代码的问题是它生成9个表而不是10个表,因为cur.nextset()运行并跳过第一个表。

我该怎么办才能解决此问题?我希望代码可以循环工作。我需要与pyodbc模块一起使用的更好的功能。

有任何想法吗?

戈德·汤普森

您可以通过将nextset()检查移至循环的底部来避免跳过第一个结果集

cur.execute("set nocount on exec SP")
while True:
    # do stuff with the result set
    if not cur.nextset():
        break
print("All result sets have been processed.")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从Python使用SQL Server存储过程(pyodbc)

如何在存储过程 SQL 中添加循环和比较

如何使用Snowflake Javascript存储过程或函数遍历表中的所有列?

SQL Server 中存储过程中的连续 While 循环

SQL Server 存储过程中 While 循环的替代方法

Python:Pyodbc使用参数执行存储过程

使用动态表名和 where 子句存储过程循环

如何使用存储过程调用Web服务,该存储过程返回json并使用sql server将数据存储在表中?

使用while循环读取存储过程中的行值

内存中的表和使用SQL Server存储的正常过程表

如何在存储过程中的表之间循环?

如何使用来自c#的MySQL存储过程,它将表作为输入发送到存储过程?我有T-SQL工作

如何使用 Python 在 excel 中读取和存储来自多个工作表的所有列的名称?

如何在 SQL Server 2016 存储过程中删除和创建表

如何使用存储过程从循环中的 sql 列中解析值

在Python中使用while和for循环遍历列表-问题

如何使用pyodbc获取SQL Server存储过程返回的行集?

如何在实体框架中同时使用表值和标量参数调用存储过程

如何在单个存储过程中创建多个表和存储过程

通过pyodbc在MS SQL中创建存储过程

在存储过程中的动态SQL中使用临时表

SQL使用存储过程在垂直表中合并值

遍历表并调用存储过程

如何使用while循环遍历字典中的项目?

为什么在Python中遍历range()比使用while循环更快?

Python-Pyodbc使用参数名称调用存储过程

如何使用存储的MYSQL过程中的表输出

如何使用PostgreSQL中的特定表获取存储过程列表?

如何使用存储过程从表中获取多条记录