【问题标题】:How to convert qdatetime into sql datetime and select from sql table in python?如何将qdatetime转换为sql datetime并从python中的sql表中选择?
【发布时间】:2020-05-24 17:03:33
【问题描述】:

用户选择 QDateTime,我需要在 pyodbc 中编写查询,该查询选择表中日期大于所选日期的项目。 如何在sql datetime中转换它?以及如何写这个请求?

【问题讨论】:

  • 我的回答对您有帮助吗?我注意到您之前的问题都没有被标记为答案。如果您看到对您有所帮助的答案,您可以通过将其标记为已接受来结束您的问题。我鼓励您对之前已回答的问题进行此操作。
  • @zedfoxus 好的,谢谢

标签: sql pyodbc qdatetime


【解决方案1】:

您可以使用以下方式将 QDateTime 变量(例如 starttime)转换为格式化字符串:

starttime.toString("YYYY-mm-dd");

将此传递给 Python。

要将其转换为 python 的本机日期时间,请执行以下操作:

import datetime
starttime = datetime.datetime.strptime(data_you_got_from_QDateTime, '%Y-%m-%d')

这会给你一个 Python datetime.datetime 对象来使用。

如果您只想在 SQL 查询中使用 QDateTime 提供的数据,您可以这样做:

import pyodbc

yourdate = date_received_from_QDateTime

cn = pyodbc.connect('DRIVER={SQL Server};SERVER=SQLSRV01;DATABASE=DATABASE;UID=USER;PWD=PASSWORD')
cursor = cn.cursor()

cursor.execute("select * from yourtable where yourfield > ?", yourdate)
for row in cursor.fetchall():
    print row

这应该为您提供合理的信息来调整上面的代码以获取信息。由于我不知道您如何将 QDateTime 发送到 Python,因此我无法对此发表评论。

【讨论】:

    猜你喜欢
    • 2020-05-22
    • 2012-01-18
    • 2016-07-21
    • 2020-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-26
    • 2012-05-05
    相关资源
    最近更新 更多