如何测试 sqllite3 在 Python 中返回结果或为空的位置?

Posted

技术标签:

【中文标题】如何测试 sqllite3 在 Python 中返回结果或为空的位置?【英文标题】:How to test where a sqllite3 returns results or empty in Python? 【发布时间】:2019-06-29 18:26:20 【问题描述】:
cursor = self.conn.execute(query)

        for row in cursor:
            print("song:", row[0])

我的目标不是返回查询结果,而是查看查询是否返回值。我看不到有一种方法可以测试“光标”对象。理想情况下,我希望看到类似的内容:

这是在 Python 中。

 if cursor is Empty(None):
      print("no result")
  else:
     print("result founds")

有没有办法做到这一点?

【问题讨论】:

编程语言?框架/API? 请看python。 您还需要指定用于执行查询的库。 【参考方案1】:

这通常通过使用EXIST sql 语句来实现。假设您使用的是 sqlalchemy,文档中的 link 或 post 可能会有所帮助

最简单的方法可能是用

包装您的查询
s = select([table.c.col1]).where(table.c.col2==5)
query = exists(s)
result = conn.execute(query).fetchone()
return True if result is not None else False

【讨论】:

以上是关于如何测试 sqllite3 在 Python 中返回结果或为空的位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Laravel 中返​​回数据库表名

如何在Web API中返回响应时隐藏模型的各个部分?

在 QAbstractItemModel 中返​​回正数行和零列是不是可以?

试图在资源 Laravel 中返​​回数据透视表

node安装sqllite3

在 Laravel 中返​​回多对多关系的统一 JSON