【问题标题】:How to check for empty results in a cursor? (flask + pymysql)如何检查游标中的空结果? (烧瓶+ pymysql)
【发布时间】:2020-07-21 13:44:41
【问题描述】:

我不知道如何检查 cursor.execute 中的空结果。 假设我有一个空表品牌。我愿意:

cursor.execute("SELECT * FROM Brand")
db.commit()
results = cursor.fetchall()
return render_template("index.html", results = results)

这会在网站上弹出: TypeError: The view function did not return a valid response. The function either returned None or ended without a return statement. 想要一个修复,也许是一个 if 语句来检查结果是否为空..

【问题讨论】:

  • 如果您只是想通过查询数据库中获取数据,则不应使用commit 调用;这仅适用于您添加数据时。你读过documentation吗?此外,如果不对其进行序列化,您将无法直接返回数据库查询。
  • 我刚刚发现它甚至不是数据库问题,我修复了它。基本上我在 jinja 函数中有一些逻辑错误

标签: python sql database flask pymysql


【解决方案1】:

你可以使用

if cursor.rowcount == 0 # empty results

而且您不需要 cmets 中提到的 db.commit()

【讨论】:

    猜你喜欢
    • 2021-02-05
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    • 2019-09-01
    • 2014-12-20
    • 2014-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多