如何将 qdatetime 转换为 sql datetime 和 select 从 sql table in python?

How to convert qdatetime into sql datetime and select from sql table in python?

用户选择 QDateTime,我需要在 pyodbc 中编写查询,它选择 table 中的项目,该日期大于选择的日期。 如何将其转换为 sql 日期时间?以及这个请求怎么写?

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

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,因此我无法对此发表评论。