当前位置: 首页 > 面试题库 >

Python SQLite如何获取正在执行的SQL字符串语句

吉泰宁
2023-03-14
问题内容

假设我们有一条SQL语句,只需要在对数据库执行之前用参数完成即可。例如:

sql = '''
      SELECT  id, price, date_out
      FROM sold_items
      WHERE date_out BETWEEN ? AND ?
      '''

database_cursor.execute(sql, (start_date, end_date))

我如何获取经过解析和执行的字符串

SELECT  id, price, date_out
FROM sold_items
WHERE date_out BETWEEN 2010-12-05 AND 2011-12-01

在这种简单情况下,它不是很重要,但是我还有其他SQL语句要复杂得多,出于调试目的,我想在sqlite管理器中自己执行它们并检查结果。

提前致谢


问题答案:

更新。我从该网页上了解到,自Python 3.3起,您可以使用以下命令触发执行的SQL的打印

connection.set_trace_callback(print)

如果您想恢复为静默处理,请使用

connection.set_trace_callback(None)

您可以使用其他功能代替print



 类似资料:
  • 如何执行提取sql字符串中字符的ENTER[chr(13)char(10)]的sql查询?谢谢

  • 问题内容: 有没有一种方法可以在Python中对字符串进行子字符串化,以从第三个字符到字符串末尾获取新的字符串? 也许喜欢吗? 如果离开第二部分意味着“直到最后”,而如果离开第一部分,它是否从头开始? 问题答案: Python称这个概念为“切片”,它不仅适用于字符串,还适用于更多的领域。看看这里的一个全面的介绍。

  • 问题内容: 如何将(度)字符转换为字符串? 问题答案: 将此行放在源代码的顶部 如果您的编辑器使用其他编码,请替换为utf-8 然后,您可以直接在源代码中包含utf-8字符

  • 如何在Go中获取字符串的字符数? 例如,如果我有一个字符串“hello”,该方法应该返回5。我看到返回字节数,而不是字符数,因此返回2而不是1,因为在UTF-8中用两个字节编码。

  • 问题内容: 我有,我需要在Oracle中获取字符串。可以使用子字符串来实现吗? 问题答案: 对于这样简单的字符串操作,我可能只使用base和函数。在下面的查询中,我们从连字符 后 两个位置开始获取您的列的子字符串。 我们也可以在这里使用(请参阅Gordon的答案),但这会更加复杂,并且性能可能不如上面的查询那样好。

  • 我有两根绳子 在两种情况下,我应该删除