微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无效的游标状态 Python SQL 语句

如何解决无效的游标状态 Python SQL 语句

我正在编写一个简单的 Python 程序来从我设置的本地主机数据库中检索信息。

我遇到以下错误

('24000','[24000] [Microsoft][ODBC Driver 17 for sql Server]Invalid cursor state')

我的代码

       try: 
            cursor = conn.cursor()
            cursor.execute(getsqlStatement('SelectRecipe'),[item])
            recipe = cursor.fetchone()[0]
            cursor.close()
        except Exception as e:
            print(e)
            return

我正在运行的查询数据库客户端中运行良好,查询不是问题,它是一个简单的 SELECT 语句:

SELECT 
     Recipe
FROM recipes
WHERE Name = ? --(item) 

我想要的结果只是最基本的语句,这样我就可以让它运行,然后能够在以后扩展复杂性,但是在这个级别上有问题。我只是想通过此代码获取我相信的一条记录和一列的值。当我搜索其他类似的问题时,答案总是与试图返回的多个结果集有关?我的查询只是一个结果集,我只运行一次?我有点摸不着头脑来寻找我缺少的东西?

错误似乎与以下内容有关:

recipe = cursor.fetchone()[0]

...线,因为它运行良好而没有在没有这条线的情况下抛出错误,但是如果我不这样做,我不确定如何将数据作为变量获取

想知道是否有人可以在这里帮助我,是否有更好的方法获取我的数据,或者我的这种方式实现是否有问题。谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。