问答

python问题求教:Cannot operate on a closed cursor。

作者:admin 2021-04-22 我要评论

写了一个简单的数据库查询方法,在下边想要调用时,报错:sqlite3.ProgrammingError: Cannot operate on a closed cursor. 方法 def select_data(): conn = sqli...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

写了一个简单的数据库查询方法,在下边想要调用时,报错:sqlite3.ProgrammingError: Cannot operate on a closed cursor.

方法

def select_data():
    conn = sqlite3.connect(dbpath)
    cur = conn.cursor()
    sql = "select VC_FUNDCODE from data_ds limit 100;"
    fund_list = cur.execute(sql)
    cur.close()
    conn.close()
    return fund_list

调用

fund_list = select_data()
datalist = []
for item in fund_list:
    datalist.append(item)
print(datalist)

返回

Traceback (most recent call last):
File "/Users/chinalife/Desktop/source/flaskTiantian/database.py", line 70, in <module>
for item in fund_list:
sqlite3.ProgrammingError: Cannot operate on a closed cursor.

###

因为你已经调用close关闭了数据库连接

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 求助!Mysql workbench connections出

    求助!Mysql workbench connections出

  • c++ 的dll 转golang可以调用

    c++ 的dll 转golang可以调用

  • c++的 new int{10}  和 new int(10) 有

    c++的 new int{10} 和 new int(10) 有

  • Grafana MySQL为数据源时, 折线图无法

    Grafana MySQL为数据源时, 折线图无法

腾讯云代理商
海外云服务器